21 日間のチェックイン チャレンジ - 古典的なアルゴリズムのクイック ソート

CSDN チェックイン アクティビティ
の出力

イベントアドレス: CSDN 21 日間学習チャレンジ

学問の最大の理由は凡庸さを取り除くことであり、一日も早く、人生がより華やかになります。親愛なる皆様へ ある
専門知識ポイントを体系的に・深く学びたい…
一人での学習を継続するのは難しい、グループで効率的に学びたい…
ブログを書きたいけど始められない… 、そして緊急に乾物を書くことにエネルギーを注入する必要があります...
書くことが大好きで、自分がより良い人になることをいとわない

...

クリエイティブプラン

**
チャンス

実際の戦闘プロジェクトでの経験の共有
日々の学習過程における記録
記事による技術交流
...

褒美

志を同じくする仲間ができることを願っています

個人のアルゴリズムの基礎レベルを向上させる
...

毎日

平均して週に 2 ~ 3 件の記事を作成する

エネルギーが限られているので、ゲームをする時間は少なくて済みますが、ガールフレンドと過ごす時間を減らすことはできません

を楽しみにしています

数万人のファンと数百万回の視聴を楽しみにしています!!

**

研究計画

**
学習目標

常に熱意にあふれ、21 日間の学習と出勤に固執する

学習内容

クイックソート

勉強日記

**
学習の知識ポイント

バブルソートの紹介

       バブルソートとも呼ばれるバブルソートは、古典的な交換ソート方法です。全体のプロセスは、順序付けされていない領域で隣接する要素をペアで比較し、相対的な順序を満たさない要素のペアを交換し、次の要素のペアを比較することです。各バブリングトリップの後、最小の要素が一番上に送られます。すべての要素が順序どおりになるまで、順序付けされていない領域でこのプロセスを繰り返します。


クイックソート

        クイック ソートは、バブル ソートのアルゴリズムを改良したものです。主なアイデアは、ソートするシーケンス内の要素 (通常は最初の要素) を参照として取得し、シーケンスを 2 つのサブシーケンス (参照値より小さい要素と大きい要素) に分割することです。基準値よりそれぞれの要素がサブシーケンスを形成します。各パスで参照要素がソートされ、2 つのサブシーケンスが生成されます。サブシーケンスの長さが 0 または 1 になるまで、サブシーケンスでこの手順を続けます。

 

アルゴリズムの説明

        クイック ソートは、分割統治戦略を使用するパーティション交換ソート方法です。最初に、元の問題は元の問題に似たいくつかの小規模なサブ問題に分割され、次にこれらのサブ問題は再帰的な方法で解決され、最後に元の問題の解決策に結合されます。
        最初のパスでシーケンス内の数値を配置し、あるべき場所に配置し、同時に 2 つのサブシーケンスを取得します。左側の数値はそれよりも小さく、右側の数値はそれよりも大きくなります (昇順で)注文)。次に、各サブシーケンス内の要素をホーミングしてサブシーケンスを取得するプロセスを、サブシーケンスの長さが 1 または 0 になるまで繰り返し、シーケンス全体が整います。

複雑さ

空間の複雑さ: logn は
主に再帰によるスタック空間の使用によるものです.
最良の場合, ツリーの深さは次のとおりです: log2(n)
空間の複雑さは O(logn) であり
、最悪の場合: n-1 です必要な呼び出しごとに 2 つの番号を交換する必要があり、この時点でバブル ソートに退化します.
空間の複雑さは O(n) で
、平均時間の複雑さは: O(logn)

時間計算量 : O(nlogn)
クイック ソートは再帰呼び出しを使用するため、その時間計算量の計算には再帰的なアルゴリズム計算も必要です

平均的な時間計算量は O(nlogn)、最悪の時間計算量は O(n*n)、補助空間は O(logn) < 余分な空間が割り当てられるたびに、合計で logn 回 > に分割されます。毎回 2 つのセクション 
, 次に、ポイントの数は logn であり、各処理には n 回の計算が必要なので、時間の計算量は nlogn です!
平均的なケースによれば、それは O(nlogn) です。これは、データ分布の確率が等しい場合、単一のデータに対して logn 回の移動後に正しい位置に配置されるためです。 
最悪は O(n^2) です. この場合、配列は単に反転され、中央の要素に移動するたびに、常に最大値または最小値が取得されます.

おすすめ

転載: blog.csdn.net/qq_52213943/article/details/126444749