Lineare Suche vs. Binäre Suche

Autor: Laura McKinney
Erstelldatum: 4 April 2021
Aktualisierungsdatum: 16 Kann 2024
Anonim
Lineare Suche vs. Binäre Suche - Andere
Lineare Suche vs. Binäre Suche - Andere

Inhalt

Der Unterschied zwischen der linearen Suche und einer binären Suche besteht darin, dass bei der linearen Suche jedes Element geprüft und verglichen und dann sortiert wird, während bei der binären Suche eine zu sortierende Liste in zwei Teile geteilt und dann sortiert wird. Suchen und Sortieren sind zwei Hauptkonzepte in der Computerprogrammierung. Viele Algorithmen werden zum Suchen und Sortieren verwendet, aber die beiden am häufigsten verwendeten Algorithmen zum Suchen und Sortieren sind die lineare Suche und die binäre Suche.


Der Unterschied zwischen der linearen Suche und einer binären Suche besteht in der Arbeitsweise und Effizienz beider Algorithmen. Die binäre Suche ist im Vergleich zum linearen Suchalgorithmus ein viel effizienterer Algorithmus. Die Iteration oder die Zeit, die benötigt wird, um jeden Wert vor dem Sortieren zu vergleichen, ist bei der binären Suche geringer als bei der linearen Suche.

Die lineare Suche ist ein sehr komplexer Algorithmus, wenn Sie eine Zahl in einer Liste suchen, vergleichen und manchmal die Anzahl der Werte in der Liste wiederholen möchten. Jedes Element der Liste wird einzeln abgerufen und mit dem benachbarten Element verglichen. Auf alle Elemente wird zugegriffen und geprüft, und dann wird das richtige Element gefunden. Es kann den schlimmsten Fall geben, wenn die letzte Nummer in der Liste die Nummer ist, nach der gesucht werden soll. Die lineare Suche ist die Methode, mit der das Array durchlaufen und das zu durchsuchende Element ermittelt wird. Wenn wir über die Effizienz sprechen, ist die Effizienz die Häufigkeit, mit der das Programm ausgeführt werden muss, um die Anzahl zu ermitteln. Wenn wir die gesuchte Nummer an der ersten Position finden, muss nur ein Vergleich durchgeführt werden, und die Dinge werden sortiert. Wenn nicht, müssen Vergleiche immer wieder durchgeführt werden, und Speicher wird verschwendet. Im Durchschnitt beträgt die Anzahl der Vergleiche (n + 1/2). Und die schlechteste Effizienz dieser Technik ist, dass O (n) für die Ausführungsreihenfolge steht.


Im Vergleich zur linearen Suche ist die binäre Suche sehr effizient. Bei dieser Methode wird das Array in zwei Teile unterteilt, und auf diese Weise ist die Anzahl der Vergleiche im Vergleich zur binären Suche sehr gering. Bei der binären Suche ist die Zeit ebenfalls kürzer als bei der linearen Suche. Die binäre Suche funktioniert so, dass das mittlere Element des Arrays gefunden und dann das mittlere Element mit einem Teil des Arrays verglichen wird. Es kann drei Möglichkeiten geben, bei denen es sich um die mittlere Zahl handelt, die wir suchen müssen, oder die Zahl, die kleiner als die mittlere Zahl ist oder die größer als die Mitte der mittleren Zahl ist. Die Anzahl der Vergleiche beträgt höchstens log (N + 1). Die binäre Suche im Vergleich zur linearen Suche ist ein effizienter Algorithmus im Vergleich zur linearen Suche, aber das Array muss vor der binären Suche sortiert werden.

Inhalt: Unterschied zwischen linearer Suche und binärer Suche

  • Vergleichstabelle
  • Binäre Suche
  • Hauptunterschiede
  • Fazit
  • Erklärendes Video

Vergleichstabelle

BasisLineare SucheBinäre Suche
BedeutungLineare Suche Jedes Element wird geprüft und verglichen und dann sortiert

Binäre Suche Eine Liste, die sortiert werden soll, wird in zwei Teile geteilt und dann sortiert.


 

Zeitliche KomplexitätDie zeitliche Komplexität der linearen Suche beträgt O (N).Die zeitliche Komplexität der binären Suche beträgt O (log 2 N)
Art des AlgorithmusDie lineare Suche ist iterativ.Binäre Suche ist Teilen und Erobern.
CodezeileBei einer linearen Suche müssen wir mehr Code schreiben.Bei einer binären Suche müssen wir weniger Code schreiben.

Lineare Suche

Die lineare Suche ist ein sehr komplexer Algorithmus, wenn Sie eine Zahl in einer Liste suchen, die Anzahl der Werte in der Liste vergleichen und einige Male wiederholen möchten. Jedes Element der Liste wird einzeln abgerufen und mit dem benachbarten Element verglichen. Auf alle Elemente wird zugegriffen und geprüft, und dann wird das richtige Element gefunden. Es kann den schlimmsten Fall geben, wenn die letzte Nummer in der Liste die Nummer ist, nach der gesucht werden soll. Die lineare Suche ist die Methode, mit der das Array durchlaufen und das zu durchsuchende Element ermittelt wird. Wenn wir über die Effizienz sprechen, ist die Effizienz die Häufigkeit, mit der das Programm ausgeführt werden muss, um die Anzahl zu ermitteln. Wenn wir die gesuchte Nummer an der ersten Position finden, muss nur ein Vergleich durchgeführt werden, und die Dinge werden sortiert. Wenn nicht, müssen Vergleiche immer wieder durchgeführt werden, und Speicher wird verschwendet. Im Durchschnitt beträgt die Anzahl der Vergleiche (n + 1/2). Und der schlechteste Wirkungsgrad dieser Technik ist, dass O (n) für die Ausführungsreihenfolge steht.

Binäre Suche

Im Vergleich zur linearen Suche ist die binäre Suche sehr effizient. Bei dieser Methode wird das Array in zwei Teile geteilt, und auf diese Weise ist die Anzahl der Vergleiche im Vergleich zur binären Suche sehr gering. Bei der binären Suche ist die Zeit ebenfalls kürzer als bei der linearen Suche. Die binäre Suche funktioniert so, wie das mittlere Element des Arrays gefunden wird, und dann wird das mittlere Element mit einem Teil des Arrays verglichen.

Es kann drei Möglichkeiten geben, bei denen es sich um die mittlere Zahl handelt, die wir suchen müssen, oder die Zahl, die kleiner als die mittlere Zahl ist oder die größer als die Mitte der mittleren Zahl ist. Die Anzahl der Vergleiche beträgt höchstens log (N + 1). Die binäre Suche im Vergleich zur linearen Suche ist ein effizienter Algorithmus im Vergleich zur linearen Suche, aber das Array muss vor der binären Suche sortiert werden.

Hauptunterschiede

  1. Lineare Suche Jedes Element wird geprüft und verglichen und dann sortiert, während bei der binären Suche eine Liste, die sortiert werden soll, in zwei Teile geteilt und dann sortiert wird.
  2. Die zeitliche Komplexität der linearen Suche beträgt 0 (N), während die zeitliche Komplexität der binären Suche 0 (log2N).
  3. Die lineare Suche ist iterativ, während die binäre Suche Teilen und Erobern ist.
  4. Bei der linearen Suche müssen wir mehr Code schreiben, während wir bei der binären Suche weniger Code schreiben müssen.

Fazit

In diesem Artikel oben sehen wir den deutlichen Unterschied zwischen linearer Suche und binärer Suche.

Erklärendes Video