ホームページ  >  記事  >  バックエンド開発  >  PHP バブル ソート アルゴリズムの詳細な例_PHP チュートリアル

PHP バブル ソート アルゴリズムの詳細な例_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:43:291851ブラウズ

私たちが学校にいたとき、先生はプログラムデータを並べ替えるアルゴリズムがたくさんあると教えてくれました。実際、バブルアルゴリズムは一般的に使用される並べ替えアルゴリズムです。今度は PHP を使用してバブルソートを実装し、それを以下に記録します。

例1

コードは次のとおりです コードをコピー

/**
* バブルソート(1次元配列)
* ペアごとにソートするデータ要素のサイズを比較し、2 つのデータ要素の順序が逆転していることが判明した場合は、逆転したデータ要素がなくなるまで交換します。 * ソートされた配列 R[1..N] が垂直に組み立てられ、各データ要素が重み付けされたバブルとみなされ、その配列が下から上にスキャンされ、原則に違反するものはすべてスキャンされます。これを何度も繰り返してください。
* 最後の 2 つの気までは、上部が軽く、下部が重くなります。
​*/
関数 bubble_sort($arr) {
$count = count($arr);
If($count = 0 || is_array($arr)) {
echo 'NOT NULL ARRAY';
false を返す;
}
for($i = 0; $i $flag = 1;
for($j = $count - 1; $j > $i; $j--) {
If($arr[$j]                                                                                                                                                                                       $arr[$j] = $array[$j - 1];
                                                                                                                                                                                                                                       if (1 == $flag)
{
echo $i,'ソートを完了';
休憩;
}
}
}
戻り $arr;
}



例 2

コードは次のとおりです コードをコピー

//効率的なソート
//バブルソート < 選択ソート < $arr = 配列(-1,10,99,89,77,101,3,4,5,22,11,56,32); //バブルソート方法
$flag = false
関数 bubbleSort($myarr)
{
$_temp = 0; for ($i=0;$i                                   for ($j=0;$j                                                                                     // 前の数値が後の数値より大きい場合、2 つの数値が交換されます
If ($myarr[$j] > $myarr[$j+1])
                                                                $_temp = $myarr[$j]; $myarr[$j] = $myarr[$j+1]; $myarr[$j+1] = $_temp; $flag = true;                                                                                                                                                     //効率を向上させるために使用されるフラグを立てます
if (!$flag)                                                                                     エコー「すでに注文された配列」。 。                                                                         $flag = false;
                                                        $myarr を返します。 }
// そのまま出力します
関数ダンプ($string)
{
エコー "

";
print_r($string);
エコー "
"; }
ダンプ(バブルソート($arr)); ?>










http://www.bkjia.com/PHPjc/633162.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/633162.html

技術記事

私たちが学校にいたとき、先生はプログラムのデータを並べ替えるアルゴリズムがたくさんあると教えてくれました。実際、バブル アルゴリズムはよく使われる並べ替えアルゴリズムです。次のメモは PHP を使用します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。