色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

php不用內置函數對數組排序的兩個算法代碼

一朋友找工作遇到的試題,備注一下。
極有可能今后我也會遇到的。
問題:php不用內置函數對數組排序,可能是降序或者升序
第一種方法:傳說中的冒泡法
復制代碼 代碼如下:
function arraysort($data, $order = 'asc') {
//asc升序 desc降序
$temp = array ();
$count = count ( $data );
if ($count <= 0)
return false; //傳入的數據不正確
if ($order == 'asc') {
for($i = 0; $i < $count; $i ++) {
for($j = $count - 1; $j > $i; $j --) {
if ($data [$j] < $data [$j - 1]) {
//交換兩個數據的位置
$temp = $data [$j];
$data [$j] = $data [$j - 1];
$data [$j - 1] = $temp;
}
}
}
} else {
for($i = 0; $i < $count; $i ++) {
for($j = $count - 1; $j > $i; $j --) {
if ($data [$j] > $data [$j - 1]) {
$temp = $data [$j];
$data [$j] = $data [$j - 1];
$data [$j - 1] = $temp;
}
}
}
}
return $data;
}
$data = array (7, 5, 3, 8, 9, 1, 5, 3, 1, 24, 3, 87, 0, 33, 1, 12, 34, 54, 66, 32 );
var_dump ( arraysort ( $data ) ); //升序
echo ('<br>');
var_dump ( arraysort ( $data ,'desc') );//降序

第二種方法:不知道取個什么名字好,就叫插入法吧! 主站蜘蛛池模板: 应用必备| 铁岭县| 乳山市| 湖南省| 慈溪市| 新郑市| 鄂温| 唐海县| 鄂伦春自治旗| 长沙县| 嘉善县| 白河县| 北京市| 佛山市| 砀山县| 岑巩县| 于都县| 堆龙德庆县| 若尔盖县| 阳新县| 甘肃省| 津南区| 闻喜县| 邛崃市| 兴安县| 西林县| 花垣县| 黔南| 高平市| 新巴尔虎右旗| 永嘉县| 黔南| 花垣县| 孝感市| 山西省| 罗定市| 新沂市| 罗源县| 横山县| 和静县| 大同县|