php幾種演算法排序

2021-08-20 10:04:02 字數 955 閱讀 1437

氣泡排序       

原理:比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個

對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

針對所有的元素重複以上的步驟,除了最後乙個。

持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

# 取出陣列最大的元素  

function getmax( $arr )

if( count( $arr ) == 0 )

if( count( $arr ) == 1 )

$max = 0;

foreach( $arr as $key => $value )

} return $max;

}

# 取出第二大的元素

function gettwomax( $arr )

if( count( $arr ) == 0 )

if( count( $arr ) == 1 )

$max = 0;

$two = 0;

foreach( $arr as $key => $value )else

} }

} return [ 'max' => $max , 'twomax' => $two ];

}

//$arr = [ ];

//$arr = array_pad( $arr , 81 , 0 );

$arr = [ 99,1000,1000 ,1,10,5,25,80,35,70,27,999,25,25 ];

//氣泡排序

function bubblesort($arr)}}

return $arr;

}

冒泡等幾種排序演算法(php)

1,氣泡排序 第一次迴圈是排序的次數,也可以理解為已經排好的個數,從陣列的開頭開始迴圈,第二次的迴圈是從尾部開始向上迴圈,也就是冒泡的過程,遇到排好的就終止 j i public function ranger if flag break print r argc 2,選擇排序,第一次迴圈,從0開始...

php幾種排序演算法的比較

php 四種排序演算法的時間與內建的sort排序比較 3000個元素,四種演算法的排序所用的時間比較 氣泡排序 857.98192024231ms 選擇排序 903.74493598938ms 插入排序 296.8270778656ms 快速排序 15.607833862305ms sort排序 0...

php實現幾種常見的排序演算法

交換排序 交換排序的基本思想是,比較兩個記錄鍵值的大小,如果這兩個記錄鍵值的大小出現逆序,則交換這兩個記錄,這樣將鍵值較小的記錄向序列前部移動,鍵值較大的記錄向序列後部移動。氣泡排序 bubble sort,台灣譯為 泡沫排序或氣泡排序 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩...