ソートアルゴリズム PHP版 クイックソート、バブルソート_PHPチュートリアル
1. クイックソート
1. はじめに
クイックソートは、Tony Hall によって開発されたソートアルゴリズムです。平均して、n 個の項目を並べ替えるには、O(n log n) 個の比較が必要です。最悪の場合、O(n2) 個の比較が必要になりますが、この状況はまれです。実際、クイックソートは、ほとんどのアーキテクチャで内部ループを効率的に実装できるため、他の Ο(n log n) アルゴリズムよりも大幅に高速であることがよくあります。
クイックソートは、分割統治戦略を使用してシーケンス (リスト) を 2 つのサブシリーズ (サブリスト) に分割します。
2. ステップ
「ピボット」と呼ばれる要素をシーケンスから選択します。
ピボット値よりも小さいすべての要素がピボットの前に配置され、ピボット値よりも大きいすべての要素が配置されるようにシーケンスを並べ替えます。ピボットの前から後ろまで(同じ番号をどちらの側にも付けることができます)。このパーティションが終了すると、塩基はシーケンスの途中になります。これをパーティション操作と呼びます。
基本値より小さい要素の部分配列と基本値より大きい要素の部分配列を再帰的に並べ替えます。
3. コードの実装
{
$len = count($array);
if($len {
return $array;
}
$key = $array[0];
$left = array();
$right = array();
for($i=1; $i<$len; ++ $ i)
$ right [] = $ array [$ i]}
print '
';<br> print_r(quickSort(array(1,4,22,5,7,6,9)));<br> print '';
4. 並べ替え効果
クイックソートを使用して数値の列を並べ替えるプロセス
2. バブルソート
1. はじめに
バブルソート (バブルソート、台湾での翻訳: バブルソートまたはバブルソート) は、単純な並べ替えアルゴリズムです。ソート対象のシーケンスを繰り返し調べて、一度に 2 つの要素を比較し、順序が間違っている場合はそれらを交換します。配列を訪問する作業は、それ以上の交換が必要なくなるまで繰り返されます。これは、配列がソートされたことを意味します。このアルゴリズムの名前は、小さい要素がスワッピングによって配列の先頭にゆっくりと「浮動」するという事実に由来しています。
隣接する要素を比較します。最初のものが 2 番目のものより大きい場合は、両方を交換します。 隣接する要素の各ペアに対して、最初のペアから始めて最後のペアで終わるまで、同じことを行います。この時点では、最後の要素が最大の数値である必要があります。
最後の要素を除くすべての要素に対して上記の手順を繰り返します。
比較する数値のペアがなくなるまで、要素の数を減らしながら上記の手順を繰り返します。3. コードの実装
コードをコピーします
コードは次のとおりです:
{
for($i=0, $len=count($array)-1; $i<$len; ++$i)
{
for( $j=$len; $j>$i; --$j)
]; return $array;
}
print '
';<br> print_r(bubbingSort(array(1,4,22,5,7,6,9)));<br> print '';
4. 並べ替え処理
バブルソートを使用して数値の列を並べ替えるプロセス
http://www.bkjia.com/PHPjc/751510.htmlwww.bkjia.com
true

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
