有1~5000一组乱序数列,请使用伪代码对该数进行排列

先把1-5000组成一个数组

冒泡排序法

$arr=array(1,2,3,4,5,6,7,8,9.....5000);

$total=count($arr);

For($i=0;$i<$total;$i++){

For($j=0;$j<$total-1;$j++){

If($arr[$j]>$arr[$j+1]){

$tmp=$arr[$i];

$arr[$j]=$arr[$j+1];

$arr[$j+1]=$tmp;

}

}

}

快速排序法

$arr=array(1,2,3,4,5,6,8,9,.........5000);

$total=count($arr);

Function quick($arr){

$left=array();

$right=array();

If($total<=1){

Return $arr;

}

For($i=1;$i<$total;$i++){

If($arr[0]>$arr[$i]){

$left[]=$arr[$i];

}else{

$right[]=$arr[$i];

}

}

$left=quick($left);

$right=quick($right);

Return array_merge($left,array($arr[0]),$right);

}

posted @ 2015-07-08 16:44  永远的呆  阅读(1479)  评论(0编辑  收藏  举报