アルゴリズムはプログラムの核であり、アルゴリズムの品質がプログラムの品質を決定すると多くの人が言います。初心者の PHP 開発者として、私はアルゴリズムに触れることはほとんどありません。ただし、プログラム開発に不可欠なツールである基本的なソートアルゴリズムを習得する必要があります。ここでは、バブル ソート、挿入ソート、選択ソート、クイック ソートの 4 つの基本的なアルゴリズムを紹介し、アルゴリズムの背後にある考え方を分析します。
前提条件: バブル ソート、クイック ソート、選択ソート、挿入ソートを使用して、次の配列の値を小さい順に並べ替えます。 1,43,54,62,21,66,32,78,36,76,39 をコピーします。 1. バブルソート 思考分析:分類する数字のグループにおいて、現在分類されていない数列について、前方から後方へ順番に隣接する 2 つの数字を比較して調整し、大きい数字が下がり、小さい数字が上がるようにします。つまり、隣接する 2 つの数値を比較し、その順序が順序要件と逆であることがわかった場合は、それらの数値が交換されます。
2. 選択ソート 思考分析: 並べ替える数字のグループの中で、最も小さい数字を選択し、最初の位置の数字と交換します。次に、残りの数字の中から最小の数字を見つけて、それを 2 番目の位置の数字と交換し、最後から 2 番目の数字が最初の数字と比較されるまでこのサイクルを繰り返します。
#p# 3. 挿入ソート 思考分析: 並べ替える数字のグループでは、前の数字がすでに順序どおりになっていると仮定して、n 番目の数字を前の順序どおりになっている数字に挿入して、これらの n 個の数字も順序どおりになるようにする必要があります。すべてが正常になるまでこのサイクルが繰り返されます。
4. クイックソート 思考分析: ベースライン要素 (通常は最初の要素または最後の要素) を選択します。 1 回のスキャンで、ソートするシーケンスが 2 つの部分に分割され、1 つの部分はベンチマーク要素よりも小さく、もう 1 つの部分はベンチマーク要素以上になります。このとき、ベンチマーク要素はソート後に正しい位置に配置され、その後同じ方法を再帰的に使用して 2 つの分割部分をソートします。
|
<<: DxRアルゴリズムのアイデアに基づいて設計されたルーティングアイテム配置構造の図
>>: プログラマーが知っておくべき 10 個の基本的な実用的なアルゴリズムとその説明_IT テクノロジー ウィークリー 402 号_51CTO.com
この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...
6月28日、OpenAIは今年5月にリリースしたChatGPTアプリのiOS版をリリースした。このア...
編集者注: 人工知能と人間の仕事は、今日多くの人が話題にしているトピックであり、議論の焦点は主に、人...
[51CTO.com クイック翻訳] ガートナーの調査によると、約 37% の組織が何らかの形で人工...
[[253094]]がんの早期発見から国境を越えた人間の言語理解、リアルタイムの高解像度ビデオでの顔...
前回ブドウに縫い目をつけた「完全自社開発」のアイアンマンロボットアーム「ダミー」を覚えていますか? ...
K-クラスタリングとはどういう意味ですか? K-means クラスタリングは、最も人気があり、広く使...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
機械学習 (ML) は情報技術 (IT) の柱の 1 つであり、人工知能のサブセットとして定義できま...
翻訳者 |ブガッティレビュー | Chonglou ChatGPTの最大のセールスポイントの 1 つ...
[[392342]] [51CTO.com クイック翻訳]探索的データ分析から自動機械学習 (Aut...
この記事で紹介する論文は、ICML2016でのグラフへのCNNの応用に関する論文です。 ICML は...