ich einige allgemeine Algorithmen-Implementierungen in JavaScript zu studieren und fand diese ein, während für quicksort suchen: https://rawgit.com/escherba/algorithms-in-javascript/master/src/quickmiddle-sort.jsVerständnis bitweise Operation in diesem Beispiel
Es implementiert ein Array Partitionsfunktion auch:
function partition(array, left, right) {
var pivot = array[(left + right) >>> 1];
while (left <= right) {
while (array[left] < pivot) { left++; }
while (array[right] > pivot) { right--; }
if (left <= right) {
var temp = array[left];
array[left++] = array[right];
array[right--] = temp;
}
}
return left;
}
Ich frage mich, was ist die Mathematik hinter der bitweisen Operation, ich bin ein ziemlich Neuling mit ihnen.
Es ist nicht wirklich notwendig in JS, wahrscheinlich ausgeliehen von Java-Code, wo es notwendig ist * – harold
@harold Ist es für Optimierungszwecke? – MattSom
Wenn es absichtlich dort ist, dann ist das das Einzige, wofür es sein kann. – harold