シェルソート(縮小増分法)は挿入型ソートに属し、順序付けられていないシーケンス全体をいくつかの小さなサブシーケンスに分割し、それらを個別に挿入してソートします。シェルソートは安定しておらず、追加スペースは O(1)、時間計算量は O(N*(logN)^2) です。最悪の場合の実行効率は、平均的な場合の実行効率とそれほど変わりません。 基本的な考え方: まず、最初の増分として n より小さい整数 d1 を取り、ファイル内のすべてのレコードを d1 グループに分割します。距離が d1 の倍数であるすべてのレコードは同じグループに配置されます。まず、各グループ内で直接挿入ソートを実行します。次に、2 番目の増分 d2<d1 を取り、増分 dt=1 (dt<dt-l<…<d2<d1) になるまで、つまりすべてのレコードが同じグループに配置されて直接挿入ソートが実行されるまで、上記のグループ化とソートを繰り返します。 コード実装:
シェルソートでは、最悪のシナリオはほとんどありません。順方向、逆方向、ランダムな順序のいずれであっても、かかる時間はそれほど長くなく、追加のストレージは O(1) であり、これは非常に優れています。クイックソートとヒープソートを理解する前に、それは確かに良い選択です。これがお役に立てば幸いです。 【編集者のおすすめ】
|
<<: Java ソートアルゴリズムの概要 (V): マージソート
>>: Java ソートアルゴリズムの概要 (パート 3): バブル ソート
車両の電動化が徐々に進むにつれ、電子制御ユニット(ECU)が車全体を制御するようになりました。アンチ...
コネクテッドデバイスの急速な普及により、スマートシティのコンセプトが現実に近づきつつあります。これら...
[[431562]]つい最近、Microsoft と NVIDIA は 5,300 億のパラメータ...
本稿では、冬季オリンピックで使用されたロボット配送車両を概観し、より多くの消費者層に便利で高品質なサ...
近年、機械学習データ(MLデータ)を深く理解する必要性に対する認識が高まっています。しかし、大規模な...
現在までに、C. elegans (ニューロン数 302) から Drosophila (ニューロン...
中国・北京—2018年8月15日、ロボット産業の「ワールドカップ」であり、世界的なインテリジェントテ...
人間の脳は極めて効率的な知能の源ですが、現在の AI はこのレベルに到達できません。 [[33099...
2018年末には、FAIRの研究者らが「ImageNetの事前トレーニングの再考」と題する論文を発...
顔認識は皆さんもよくご存知だと思います。過去2年間、顔認識技術の急速な発展に伴い、「顔スキャン」は徐...
21 世紀は人類史上刺激的な時代であり、人々の日常生活に技術の進歩が起こっています。今では、患者の健...