算是朝花夕拾吧
$(function() { binsort([ 1, 3, 4, 255, 6, 5323, 27, 8 ]); }); function binsort(arr) { var l = 0; r = arr.length - 1; next(arr, l, r); function next(arr, l, r) { if (l < r) { var m = ~~((r + l) / 2); next(arr, l, m); next(arr, m + 1, r); merge(arr, l, m, r); } } function merge(arr, l, m, r) { var barr = []; var ai = l; var bi = m + 1; var p = 0; console.log("ai=%d", ai); while (ai <= m && bi <= r) { barr[p++] = arr[ai] < arr[bi] ? arr[ai++] : arr[bi++]; } while (ai <= m) { barr[p++] = arr[ai++]; } while (bi <= r) { barr[p++] = arr[bi++]; } console.log(barr.join(',')); for ( var i = 0; i < barr.length; i++) { arr[l + i] = barr[i]; } } }