Seite wählen

Umfangreiche JavaScript Arrays durchsuchen

von | Jul 21, 2011 | Development

„Einfache“ Suchalgorithmen gehen meist so vor, alle Elemente des Arrays zu durchlaufen, bis der gesuchte Wert gefunden ist. Bei großen Arrays, können durch andere Algorithmen, kleinere oder größere Geschwindigkeitsvorteile erzielt werden – abhängig von Größe des Feldes und Anzahl der Suchoperationen. Ein Beispiel dafür wäre die binäre Suche, bei der das Feld aber sortiert sein muss. Sie basiert auf einer einfachen Form des Schemas Teile und Herrsche. Einfach gesagt, halbiert sich die Länge des Suchbereiches so von Schritt zu Schritt und spätestens bei einer Suchbereichslänge von 1, ist das Element gefunden.

 Array.prototype.bsearch = function(value) { var high = this.length, low = -1, mid; while(high - low > 1) { if(this[mid = high + low >> 1] < value) { low = mid; } else { high = mid; } } return this[high] != value ? -1 : high; } 
Eric Lippmann
Eric Lippmann
CTO

Eric kam während seines ersten Lehrjahres zu NETWAYS und hat seine Ausbildung bereits 2011 sehr erfolgreich abgeschlossen. Seit Beginn arbeitet er in der Softwareentwicklung und dort an den unterschiedlichen NETWAYS Open Source Lösungen, insbesondere inGraph und im Icinga Team an Icinga Web. Darüber hinaus zeichnet er für viele Kundenentwicklungen in der Finanz- und Automobilbranche verantwortlich.

0 Kommentare

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Mehr Beiträge zum Thema Development

Mein PHP-Trainingsprojekt

PHP Schulung Vor kurzem haben wir begonnen, eine neue Programmiersprache zu lernen – PHP. In der ersten Woche haben wir mit den Grundlagen wie Variablen, Arrays, Schleifen begonnen und uns schrittweise zu komplizierterer Syntax wie Funktionen, Objekten und Klassen...

check_prometheus ist jetzt öffentlich verfügbar!

Monitoring ist komplex, das wissen wir hier bei NETWAYS leider zu gut. Deswegen laufen in der Infrastruktur auch mal gerne mehrere Tools für die Überwachung. Zwei gern gesehene Kandidaten sind dabei Icinga und Prometheus. Icinga und Prometheus erfüllen...