排序算法

最近开始学算法及shell..先记下来一些算法..
假设有以下一个$arr数组,需要对其进行排序,从小到大,需要进行两两的比对,设定初始值为2,外层循环临界条件为数组的循环次数,
内层临界条件则为当前循环数组下标与$arr[$i]进行比对
$arr = [3,41,52,26,38,57,9,49];
for($j=2;$j<count($arr);$j++){
    $key = $arr[$j];
    $i = $j-1;
    while($i>0 && $arr[$i] > $key){
        $arr[$i+1] = $arr[$i];
        $i = $i-1;
    }
    $arr[$i+1] = $key;

}

打印出来结果:

  0 =>  3
  1 =>  9
  2 =>  26
  3 =>  38
  4 =>  41
  5 =>  49
  6 =>  52
  7 =>  57

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值