• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP实现插入排序

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

插入排序思想:

  1. 插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。 
  2. 它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描, 
  3. 找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序), 
  4. 因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。
     1 <?php
     2 $arr = [2, 3, 1, 6, 4, 7, 5, 9];
     3 
     4 var_dump(insertsort($arr));
     5 function insertSort($arr) {
     6     $len = count($arr);
     7     for ($i = 1; $i < $len; $i++) {
     8         // 当前值
     9         $key = $arr[$i];
    10         // 当前位置
    11         $pos = $i;
    12         // 如是当前位置 >0 && 当前值的前一个值 > 当前值 选出最值
    13         while ($pos > 0 && $arr[$pos - 1] > $key) {
    14             // 当前值  =  前一个值
    15             $arr[$pos] = $arr[$pos - 1];
    16             // 当前位置后移
    17             $pos = $pos - 1;
    18         }
    19         // 找到当前值的位置
    20         $arr[$pos] = $key;
    21     }
    22     return $arr;
    23 }
    

     


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php的实参和形参发布时间:2022-07-10
下一篇:
4如何用PHP给MySQL数据库添加记录发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap