Erstelle ein Flussdiagramm für einen Algorithmus zur binären Suche
Über das Framework
Dieses Flussdiagramm mit zehn Knoten sucht in einem sortierten Array nach einem Zielwert. Es setzt low auf null und high auf n minus eins, prüft, ob low höchstens high ist, und berechnet einen Mittelpunkt. Bei einer Übereinstimmung wird mid zurückgegeben; andernfalls bestimmt ein zweiter Vergleich, welche Grenze angepasst wird.
Die beiden Aktualisierungsschritte setzen low auf mid plus eins oder high auf mid minus eins und führen anschließend zurück zur Grenzprüfung. Sobald das Intervall erschöpft ist, gibt der Ablauf -1 zurück. Die Mittelpunkt-Box verwendet (low+high) / 2, ohne eine Ganzzahligkeitsrundung anzugeben. In einer codeorientierten Version muss dieses Detail daher geklärt werden.
Nutze das Diagramm, um die Suche mit einem kleinen sortierten Array von Hand nachzuvollziehen. Notiere low, high und mid nach jeder Iteration und probiere sowohl vorhandene als auch nicht vorhandene Zielwerte aus. Das Beispiel gibt den Index eines gefundenen Werts zurück, enthält aber keinen speziellen Zweig, um das erste Vorkommen eines Duplikats zu finden.
Enthalten
Flussdiagramm zur binären Suche
✦ Free preview · Sign in to use
Häufig gestellte Fragen
Das Beispiel setzt ein sortiertes Array voraus. Die Vergleiche grenzen das Intervall anhand dieser Sortierung ein; das Sortieren selbst ist kein Schritt im Diagramm.
Die Box macht keine Angaben zur Rundung. Bei einer indexbasierten Variante solltest du die Ganzzahligkeit ausdrücklich festlegen, zum Beispiel mit low + floor((high-low)/2).
Die Grenzen werden so lange aktualisiert, bis low größer als high ist. Der Nein-Zweig von low <= high gibt anschließend -1 zurück.
Kostenlos starten. Keine Kreditkarte erforderlich.