Heim  >  Artikel  >  System-Tutorial  >  Algorithmus – Detaillierte Erklärung der binären Suche

Algorithmus – Detaillierte Erklärung der binären Suche

WBOY
WBOYnach vorne
2024-02-15 10:00:13380Durchsuche

Algorithmus – Detaillierte Erklärung der binären Suche

Binäre Suche wird auch Halbsuche genannt. Die Vorteile sind eine geringere Anzahl von Vergleichen, eine schnelle Suchgeschwindigkeit, eine gute Durchschnittsleistung und ein geringerer Systemspeicherbedarf

Der Nachteil besteht darin, dass die nachzuschlagende Tabelle eine geordnete Tabelle sein muss und das Einfügen und Löschen schwierig ist.

Daher eignet sich die Halbsuchmethode für geordnete Listen, die sich nicht häufig ändern, aber häufig durchsucht werden .

Angenommen, die Elemente in der Tabelle sind in aufsteigender Reihenfolge angeordnet, vergleichen Sie das in der Mitte der Tabelle aufgezeichnete Schlüsselwort mit dem Suchschlüsselwort. Wenn die beiden gleich sind, ist die Suche erfolgreich

Andernfalls wird der mittlere Positionsdatensatz verwendet, um die Tabelle in die vordere und letzte Untertabelle zu unterteilen. Wenn das an der mittleren Position aufgezeichnete Schlüsselwort größer als das Suchschlüsselwort ist, wird die vorherige Untertabelle weiter durchsucht, andernfalls die letztere Untertabelle -table wird weiter durchsucht.

Wiederholen Sie den obigen Vorgang, bis ein Datensatz gefunden wird, der die Bedingungen erfüllt, wodurch die Suche erfolgreich ist, oder bis die Untertabelle nicht mehr vorhanden ist. In diesem Fall ist die Suche erfolglos.

#include <iostream><br> unter Verwendung des Namensraums std;</iostream>

int binäre_suche(int *A,int n,int key)
{
int links=0,rechts=n-1;
while(left>1;
if(key==A[mid])
Rückkehr Mitte;
else if(key>key;
cout

Das obige ist der detaillierte Inhalt vonAlgorithmus – Detaillierte Erklärung der binären Suche. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen