ホームページ > 記事 > ウェブフロントエンド > JavaScriptでのHillソートの詳しい説明
この記事では JavaScript での Hill ソートについて説明します。JavaScript での Hill ソートについて知らない場合、または JavaScript での Hill ソートに興味がある場合は、この記事を見てみましょう。 !
JavaScript でのヒル ソート
ヒル ソートは、挿入ソートのより効率的な実装です。挿入ソートとは異なり、遠くにある要素を最初に比較します。ヒルソートの核心は区間シーケンスの設定にあります。間隔シーケンスは、事前に設定することも、動的に定義することもできます。区間シーケンスを動的に定義するアルゴリズムは、『Algorithms (4th Edition)』の共著者である Robert Sedgewick によって提案されました。ここでは、この方法を使用しました
JavaScript コードの実装
function shellSort(arr) { var len = arr.length, temp, gap = 1; while(gap < len/3) { //动态定义间隔序列 gap =gap*3+1; } for (gap; gap > 0; gap = Math.floor(gap/3)) { for (var i = gap; i < len; i++) { temp = arr[i]; for (var j = i-gap; j >= 0 && arr[j] > temp; j-=gap) { arr[j+gap] = arr[j]; } arr[j+gap] = temp; } } return arr;}
以上がこの記事の内容です。あまり詳しくない場合は、両方を自分で実装することで簡単にマスターできます
関連する推奨事項:
以上がJavaScriptでのHillソートの詳しい説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。