昨天去酷狗面試的時候,在筆試那一關,有道要求用php實現氣泡排序的程式設計題,因為實在太久沒用過氣泡排序,忘記了演算法的原理,結果留了空白,實在無語。因此今天把php的氣泡排序**記錄一下:
<?php
/** * 氣泡排序
*@param array $numbers 要排序的陣列,只限數字一維陣列
*@param boolean $asc 排序順序,true是正序,false是逆序
*/function
bubble_sort
(array $numbers, $asc = true) }}
return
$numbers;
}$arr = [1, 3, 5, 8, 4];
var_dump(bubble_sort($arr));
/** * 輸出:
* array (size=5)
* 0 => int 1
* 1 => int 3
* 2 => int 4
* 3 => int 5
* 4 => int 8
*/var_dump(bubble_sort($arr, false));
/** * 輸出:
* array (size=5)
* 0 => int 8
* 1 => int 5
* 2 => int 4
* 3 => int 3
* 4 => int 1
*/
php排序演算法之氣泡排序
一 原理 二 舉例說明 三 php 實現氣泡排序 對一組資料,比較相鄰資料的大小,將值小資料在前面,值大的資料放在後面。以下都是公升序排列,即從小到大排列 arr array 6,3,8,2,9,1 arr 有6個資料,按照兩兩比較大小如下,注意比較輪數 和 每輪比較次數 第一輪排序 第一輪比較總結...
PHP排序演算法之氣泡排序
一 氣泡排序 原理 對一組資料,比較相鄰資料的大小,將值小資料在前面,值大的資料放在後面。以下都是公升序排列,即從小到大排列 舉例說明 arr array 6,3,8,2,9,1 arr 有6個資料,按照兩兩比較大小如下,注意 比較輪數 和 每輪比較次數 第一輪排序 第一次比較 6和3比較 結果 3...
php演算法之氣泡排序
思路分析 法如其名,就是像冒泡一樣,每次從陣列當中 冒乙個最大的數出來。比如 2,4,1 第一次 冒出的泡是4 2,1,4 第二次 冒出的泡是 2 1,2,4 最後就變成這樣 通過迴圈套迴圈 實現裡面的迴圈比外面迴圈少一次 思路 相鄰的倆數相比較,大的向後挪動一位 每次迴圈 陣列最後一位為最大值 每...