最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2010年02月08日 08:22:11   作者:  
php不用內置函數(shù)對數(shù)組排序,可能是降序或者升序
一朋友找工作遇到的試題,備注一下。
極有可能今后我也會遇到的。
問題:php不用內置函數(shù)對數(shù)組排序,可能是降序或者升序
第一種方法:傳說中的冒泡法
復制代碼 代碼如下:

function arraysort($data, $order = 'asc') {
//asc升序 desc降序
$temp = array ();
$count = count ( $data );
if ($count <= 0)
return false; //傳入的數(shù)據(jù)不正確
if ($order == 'asc') {
for($i = 0; $i < $count; $i ++) {
for($j = $count - 1; $j > $i; $j --) {
if ($data [$j] < $data [$j - 1]) {
//交換兩個數(shù)據(jù)的位置
$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') );//降序

第二種方法:不知道取個什么名字好,就叫插入法吧!囧
復制代碼 代碼如下:

function arraysort3($data, $order = 'asc') {
//目前只做升序排列
$count = count ( $data );
for($i = 1; $i < $count; $i ++) {
$temp = $data [$i];
$j = $i - 1;
while ( $data [$j] > $temp ) {
$data [$j + 1] = $data [$j];
$data [$j] = $temp;
$j --;//為什么要遞減:從高位逐位判斷
}
}
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 ( arraysort3 ( $data ) ); //升序

相關文章

最新評論

泰顺县| 江油市| 阿鲁科尔沁旗| 天气| 龙海市| 南皮县| 宁陵县| 鹤壁市| 邵阳市| 兰西县| 天门市| 八宿县| 浮梁县| 永兴县| 息烽县| 岳普湖县| 太康县| 新津县| 加查县| 家居| 临泉县| 黄冈市| 岫岩| 上虞市| 清远市| 镇远县| 阳春市| 汤阴县| 安阳县| 杭州市| 通辽市| 星座| 赤水市| 南阳市| 霍州市| 务川| 高雄市| 绥阳县| 方城县| 巴里| 甘德县|