Wir haben zwei sortierte Arrays der gleichen Größe n. Nennen wir die Arrays a und b.
Wie findet man das mittlere Element in einem sortierten Array, das durch a und b verbunden ist?
Example:
n = 4
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
merged = [1, 2, 3, 3, 4, 4, 5, 6]
mid_element = merged[(0 + merged.length - 1) / 2] = merged[3] = 3
Kompliziertere Fälle:
Fall 1:
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
Fall 2:
a = [1, 2, 3, 4, 8]
b = [3, 4, 5, 6, 7]
Fall 3:
a = [1, 2, 3, 4, 8]
b = [0, 4, 5, 6, 7]
Fall 4:
a = [1, 3, 5, 7]
b = [2, 4, 6, 8]
Erforderliche Zeit: O(log n). Irgendwelche Ideen?