演算法題
1. 使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列
//氣泡排序(陣列排序)
function bubble_sort($array)}}
return $array;
}
//快速排序(陣列排序)
function quick_sort($array)
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}
2. 使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列
//二分查詢(陣列裡查詢某個元素)
function bin_sch($array, $low, $high, $k)elseif ($k < $array[$mid])else
}return -1;
}
//順序查詢(陣列裡查詢某個元素)
function seq_sch($array, $n, $k)
}if ($i<$n)else
}
3. 寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式
//二維陣列排序, $arr是資料,$keys是排序的健值,$order是排序規則,1是公升序,0是降序
function array_sort($arr, $keys, $order=0)
$keysvalue = array();
foreach($arr as $key => $val)
if($order == 0)else
reset($keysvalue);
foreach($keysvalue as $key => $vals)
$new_array = array();
foreach($keysort as $key => $val)
return $new_array;
}
PHP 常見演算法
arr array 1,43,54,62,21,66,32,78,36,76,39 getpao 就是像冒泡一樣,每次從陣列當中 冒乙個最大的數出來 param type arr 陣列 return type description function getpao arr return arr 冒泡...
php常見演算法
基本思想 對需要排序的陣列從後往前 逆序 進行多遍的掃瞄,當發現相鄰的兩個數值的次序與排序要求的規則不一致時,就將這兩個數值進行交換。這樣比較小 大 的數值就將逐漸從後面向前面移動。function mysort arr if issort return arr arr array 3,1,2 va...
PHP五種常見演算法
氣泡排序 created by phpstorm.user maguanya date 2018 1 9 time 下午1 38 氣泡排序 function bubble arr len count arr if len 1 for i 1 i len i return arr 先定義乙個陣列 ar...