PHP の単純な選択ソート アルゴリズムの例、PHP アルゴリズムの例_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:09:00
オリジナル
995 人が閲覧しました

PHP 単純な選択並べ替えアルゴリズムの例、PHP アルゴリズムの例

シンプルな選択ソートアルゴリズム: キーワード間のn-i比較を通じて、n-i+1レコードから最小のキーワードを持つレコードを選択し、それをi番目(1

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

クラスソート{
/**
*簡易選択ソート
*
* @param 不明なタイプ $arr
                     */
パブリック関数 selectSort(&$arr) {
$len=count($arr);
for ($i=0;$i<$len;$i++) {
$min=$i;
for ($j=$i+1;$j<=$len-1;$j++) {
If ($arr[$min]>$arr[$j]) {//$arr[$min] より小さい値が見つかった場合、添え字を $min に割り当てます
$min=$j;
}
}
If ($min!=$i){//$min が $i に等しくない場合、最小値が見つかったことを意味し、交換
$this->swap($arr[$i],$arr[$min]);
}
}
}
/**
* 2 つの値 $a と $b の位置を入れ替えます
                     */
パブリック関数スワップ(&$a,&$b) {
$temp=$a;
$a=$b;
$b=$temp;
}
}
$arr=array(4,6,1,2,9,8,7,3,5);
$test=新しい並べ替え(); $test->selectSort($arr);//単純な選択ソート
// var_dump($arr);
?>

シンプルな選択ソートの特徴:モバイルデータの交換回数が非常に少ないため、対応する時間を節約できます

単純な選択ソートの時間計算量分析:
最良の場合でも最悪の場合でも、比較の数は同じです。i 番目の並べ替えでは、n-i 個のキーワードの比較が必要です。つまり、n(n-1)/2 個の比較が必要です。したがって、最終的な時間計算量は O(n^2) になります
バブル ソートと同様に O(n^2) ですが、それでも選択ソートのパフォーマンスはバブル ソートよりわずかに優れています。

http://www.bkjia.com/PHPjc/947915.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/947915.html技術記事 PHP 単純な選択ソート アルゴリズムの例、PHP アルゴリズムの単純な選択ソート アルゴリズムの例: キーワード間の n-i 比較を通じて、n-i+1 レコードから最小のキーワードを持つレコードを選択し、それを...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!