PHP面试难题

来源:百度知道 编辑:UC知道 时间:2024/05/23 16:06:53
本人最近面试碰到了一个难题,如下:有一个数组,其中的元素类型全是整型,要求你写一个PHP函数将数组元素从大到小排列出来。(要求:不能用PHP函数) 这个题目最大的困惑就是不能用PHP函数。请各路高手赐教。并附代码。不甚感激!
小弟还是菜鸟啊,望附代码。

<?php

//获取一个整数数组
$ary = range(0,20);

//将数组‘打乱’
shuffle($ary);

//冒泡排序
function bullble_sort(&$ary){

$len = count($ary);

$tmp = null;

for($i = 0 ; $i < $len ; $i++){

for($j = $i ; $j < $len ; $j++){

if($ary[$i] < $ary[$j]){

$tmp = $ary[$i];
$ary[$i] = $ary[$j];
$ary[$j] = $tmp;

}
}
}
}

//直接插入排序
function insertion_sort(&$ary){

$len = count($ary);

for($i = 1 ; $i < $len ; $i++){

$tmp = $ary[$i];

for($j = $i ; $j > 0 && $tmp > $ary[$j - 1] ; $j--){

$ary[$j] = $ary[$j-1];

}

$ary[$j] = $tmp;
}
}

//快速排序
function quick_sort(&$ary , $low , $high){

if($low < $high){

$pivot = $ary[$low];
$i = $low;
$j = $high;