私はJavaScriptでいくつかの一般的なアルゴリズムの実装を検討し、クイックソートを探している間、この1を見つけましたよ: https://rawgit.com/escherba/algorithms-in-javascript/master/src/quickmiddle-sort.js理解ビット演算は
それだけでなく、アレイのパーティション機能を実装しています
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;
}
を
ビット単位の演算の背後にある数学は何か、私はそれらを持つかなり初心者です。右1によって4
JSで本当に必要なわけではありません。おそらくJavaコードから借用しています* – harold
@harold最適化のためですか? – MattSom
それが意図的に存在すれば、それが唯一可能なことです。 – harold