中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中的選擇排序算法實例

發布時間:2021-06-30 18:03:07 來源:億速云 閱讀:134 作者:chen 欄目:開發技術

本篇內容介紹了“PHP中的選擇排序算法實例”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

簡單的選擇排序算法:通過n-i次關鍵字間的比較,從n-i+1個記錄中選出關鍵字最小的記錄,并和第i(1<=i<=n)個記錄交換

復制代碼 代碼如下:


<?php
    class Sort{
        /**
         * 簡單的選擇排序
         *
         * @param unknown_type $arr
         */
        public function 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]);
                }
            }
        }
        /**
         * 將$a和$b兩個值進行位置交換
         */
        public function swap(&$a,&$b) {
            $temp=$a;
            $a=$b;
            $b=$temp;
        }
    }
    $arr=array(4,6,1,2,9,8,7,3,5);
    $test=new Sort();
    $test->selectSort($arr);//簡單的選擇排序
//    var_dump($arr);
?>

簡單選擇排序的特點:交換移動數據次數相當少,從而節約了相應的時間
簡單選擇排序的時間復雜度分析:
無論最好最差的情況,其比較次數都是一樣多,第i趟排序需要進行n-i次關鍵字的比較,此時需要比較n(n-1)/2次。所以最終的時間復雜度是O(n^2)
盡管與冒泡排序同為O(n^2),但選擇排序的性能還是略優于冒泡排序的。

“PHP中的選擇排序算法實例”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

靖西县| 石阡县| 罗平县| 米泉市| 孟津县| 施甸县| 峡江县| 东至县| 进贤县| 古丈县| 宜兰市| 德兴市| 蓬莱市| 淳安县| 德化县| 横峰县| 浮山县| 高州市| 武功县| 南投县| 新干县| 南丹县| 西畴县| 天台县| 丰县| 邵阳县| 河北省| 历史| 京山县| 荆州市| 阳城县| 蕉岭县| 乐亭县| 临江市| 阿拉善左旗| 海丰县| 德钦县| 龙州县| 安福县| 江永县| 深水埗区|