在PHP中实现数字排序很简单,我们可以将字符串转成数组,例如:
$string = '94132768';
通过
$arr = str_split(($string);
转成数组:
$arr = array(9,4,1,3,2,7,6,8);
排序算法
第一种我们可以通过使用Php的内置函数进行排序
sort($arr);升序,rsort($arr)降序
第二种是使用 选择排序法 进行排序,大概思路就是,从数组中找到最小数,然后与第1位数字进行对调,然后以此类推:
9,4,1,3,2,7,6,8
9和1对调
1,4,9,3,2,7,6,8
然后4到8中最小数为2,2和4对调
1,4,9,3,4,7,6,8
以此类推
$n = count($arr);
for($i=0;$i<$n;$i++){
$min = $arr[$i];
//比较[i,n)中的最小数,然后进行位置兑换
for($j=$i+1;$j<$n;$j++){
if($arr[$j] < $min)
{
$temp = $arr[$j];
$arr[$i] = $temp;
$arr[$j] = $arr[$i];
$min = $arr[$j];
}
}
}
print_r($arr);
大家可以没事试试。很简单的算法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。