Hill sort is an upgrade of the inserted sort, the insertion sort is the nearest comparison, and until the end, the hill sort is a jumping comparison, if the two difference is a large number distance, so the effect of the hill sort is revealed.
//Insert Sort
function Insertsort (arr) {var j = 0; for (var i = 1; I<arr. length; i++) {var temp= Arr[i]; var k= i; While (k>= 0 && arr[k-1] >= temp) {Arr[k] = arr[k-1]; k--; j + +; } Arr[k] = temp; } console.log (J, ' compare Times ') return arr; }//Hill sort var p = 0; function Shellsort (arr, gaps) {for (var g = 0; G<Gaps. length; ++g) {for (var i= Gaps[g];i < arr.length; ++i) {var temp= Arr[i]; var J= i; For (; J>= Gaps[g] && arr[j-gaps[g]] > temp; J-= Gaps[g]) {Arr[j] = arr[j-gaps[g]]; p++; } Arr[j] = temp; }} console.log (P, ' compare Times ') return arr; }
Comparison of insert sort and hill sort