关于排序算法的思想及实现

在搞懂算法之前我觉得非常有必要先弄明白排序算法的几种使用原理,这样才能不至于两天就忘的情况出现
$array = array(4,5,67,2,1,35,8);
1 冒泡排序
这应该是排序算法中最简单的一种算法了,实现思路:将相邻两个值进行比较,大的值向后移位,然后继续向下对比,一个循环之后可以确定的是最大的值一定在最后一位,然后继续循环,因为最后一位已经是最大的了,所以这一次的循环我们不在对比最后一位,往下同理,
2 选择排序
感觉要比冒泡排序容易理解的很多。实现思路:从未排序数组中取出最大值(或最小值),放到一个新的数组中,然后再从未排序的剩余数组中取最大值,放到新数组的前面,以此类推,这样就能得到一个升序排列的有序数组。

1 冒泡排序

for($i = 1;$i<count($array);$i++){
    for($j=0;$j<count($array)-$i;$j++){
        if($array[$j] > $array[$j+1]){
            $b = $array[$j+1];
            $array[$j+1] = $array[$j];
            $array[$j] = $b;
        }
    }
}

2 选择排序

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值