Vorgaben:

Werbung
Informatik OTG
Suchalgorithmen
Binäre Suche
Voraussetzung: Die Elemente sind entsprechend ihrer Ordnung in einem Array gespeichert (geordnetes,
sortiertes Array)
i : 0  i < n-1 a[i]  a[i+1]
Gesucht: x (Wir suchen nun nach einem Index i mit a[i] = x)
Der Bereich, in dem das gesuchte Element noch befinden kann, soll mit jedem Schritt auf die Hälfte verkleinert
werden.
Der Indexbereich des Arrays beginnt mit min = 0 und endet mit max < n-1.
0  min, max < n
Außerdem: Wenn x im Array a vorhanden ist, muss es auch im Abschnitt a[min ... max] zu finden sein.
Algorithmus
Falls x = a[m], Ende, m wird als Ergebnis zurückgegeben;
falls x > a[m], suche weiter in min … m-1
(max = m-1);
falls x < a[m], suche weiter im Bereich m + 1 ... max (min=m+1).
Beispiel mit 19 Elementen, gesucht wird x = 36
0
5
18
8
11
17
23
31
32
36
37
41
47
11
17
23
31
32
36
37
41
47
36
37
41
23
56
60
61
63
77
79
82
83
84
86
36
Komplexität:
Um 1000 Elemente zu durchsuchen, genügen log21000 Vergleiche, also .........
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
..................................................................................................................................................................................................................................
Herunterladen