Heim >Web-Frontend >js-Tutorial >Beispielanalyse für JS-Blasensortierung, Auswahlsortierung und Einfügungssortierung
Dieser Artikel stellt hauptsächlich die Blasensortierung, Auswahlsortierung und Einfügungssortierung des JS-Sortieralgorithmus vor. Er analysiert die Konzepte, Prinzipien und Implementierungsmethoden der Blasensortierung, Auswahlsortierung und Einfügungssortierung in Form von Beispielen Ich hoffe, ich kann allen helfen.
Blasensortierung:
Vergleichen Sie die Größen zweier benachbarter Zahlen nacheinander für die Daten im Array.
Wenn die vorherigen Daten größer sind als die späteren Daten, tauschen Sie die beiden Zahlen aus.
ZeitkomplexitätO(n^2)
function bubble(array){ var temp; for(var i=0; i<arr.length; i++){ for(var j=0; j<arr.length; j++){ if(arr[j]>arr[j+1]){ temp = arr[j+1]; arr[j+1] =arr[j]; arr[j]=temp; } }console.log(arr); } }//冒泡排序
Auswahlsortierung:
Wählen Sie zunächst die kleinsten Daten aus dem ursprünglichen Array aus und tauschen Sie diese mit den Daten an Position 1 aus.
Wählen Sie aus den verbleibenden n-1 Daten die nächstkleineren Daten aus und tauschen Sie sie mit den Daten an der zweiten Position aus.
Wiederholen, bis die letzten beiden Daten ausgetauscht sind.
ZeitkomplexitätO(n^2)
function selectionSort(array){ var min,temp; for(var i=0; i<array.length-1; i++){ min=i; for(var j=i+1; j<array.length; j++){ if(array[j]<array[min]){ min=j; } } swap(array,min,i); } console.log(array); }//选择排序 function swap(array,i,j){ var temp =array[i]; array[i]=array[j]; array[j]=temp; }//两个数字交换
Einfügungssortierung:
Vergleichen Sie zunächst die ersten beiden Daten von klein nach groß.
Vergleichen Sie dann die dritten Daten mit den ersten beiden angeordneten Daten und fügen Sie die dritten Daten an der entsprechenden Position ein. Und so weiter.
(Einfügesortierung hat zwei Schleifen. Die äußere Schleife verschiebt die Arrays einzeln, und die innere Schleife vergleicht das von der äußeren Schleife ausgewählte Element mit der Zahl davor.)
Zeitliche Komplexität O(n^2)
function insertSort(arr){ var temp, j; for(var i=1; i<arr.length; i++){ temp =arr[i]; j=i; while(j>0 && arr[j-1]>temp){ arr[j]=arr[j-1]; j--; } arr[j]=temp; } }
Verwandte Empfehlungen:
Zählsortierung implementiert durch JS Beispiele für Radix-Sortieralgorithmus_Javascript-Fähigkeiten
Detaillierte Erklärung des Sortieralgorithmus
Das obige ist der detaillierte Inhalt vonBeispielanalyse für JS-Blasensortierung, Auswahlsortierung und Einfügungssortierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!