1 <?php 2 /** 3  * 半折插入排序 straight binary sort 4  *  5  * 原理:当直接插入排序进行到某一趟时,对于 r[i] 来讲,前边 i-1 个记录已经按关键字有序。此时不用直接插入排序的方法,而改为折半查找,找出 r[i] 应插的位置,然后插入。 6 */ 7 function sort_binary_insertion($list) 8 { 9 $len=count($list);10 if(empty($len)) return$list;11 12 for($i=1; $i<$len; $i++)13     {14 $temp=$list[$i];15 $low=0;16 $high=$i-1;17 18 while($low<=$high)19         {20 $mid=intval(($low+$high)/2);21             22 //if($temp > $list[$mid]) // 从大到小23 if($temp<$list[$mid]) // 从小到大24             {25 $high=$mid-1;26             } else {27 $low=$mid+1;28             }29         }30 for($j=$i-1; $j>=$mid; $j--)31         {32 $list[$j+1] =$list[$j];33 echoimplode(",",$list),"#mid=",$mid,"<br/>";34         }35 $list[$low] =$temp;36 echoimplode(",",$list),"<br/>";37 echo"--------------------------------<br/>";38     }39 40 return$list;41 }42 43 44 $list=array(4,3,2,1,5,7,3,7);45 $list= sort_binary_insertion($list);

  

[php]数据结构算法(PHP描述) 半折插入排序 straight binary sort相关推荐

  1. php代码编写直接插入排序算法,PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析...

    本文实例讲述了PHP排序算法之直接插入排序(Straight Insertion Sort).分享给大家供大家参考,具体如下: 算法引入: 在这里我们依然使用<大话数据结构>里面的一个例子 ...

  2. 插入排序 php,PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析

    本文实例讲述了PHP排序算法之直接插入排序(Straight Insertion Sort).分享给大家供大家参考,具体如下: 算法引入: 在这里我们依然使用<大话数据结构>里面的一个例子 ...

  3. 直接插入排序(Straight Insertion Sort)

    将一个数组,按当前元素的大小,插入到前面已经排好序的数据中的适当位置中, 依次直到全入插入完全. 下面是一个数组在经过插入排序时的变化情况(t表次数times) Init---{7, 4, 3, 2, ...

  4. 资料分享:送你一本《数据结构与算法JavaScript描述》电子书!

    数据结构 是掌握计算机编程必须具备的技能.通常情况下,我想掌握一门编程语言所用的方法就是利用这门语言把数据结构中线性表.栈.队列.字符串.动态数字.整数集合.树.图.搜索.排序等涉及的算法全部写一遍. ...

  5. 7.使用php描述冒泡排序,PHP 数据结构 算法描述 冒泡排序 bubble sort

    PHP 数据结构 算法描述 冒泡排序 bubble sort 复制代码 代码如下: /** * 冒泡排序 bubble sort * * 原理:多次循环进行比较,每次比较时将最大数移动到最上面.每次循 ...

  6. 一年半´力扣´练习生超详细总结(附数据结构+算法)

    一年半´力扣´练习生超详细总结(附数据结构+算法) 文章目录 一年半´力扣´练习生超详细总结(附数据结构+算法) 我与力扣 数据结构 算法 未来计划 其他专栏推荐 我与力扣 专栏导航:LeetCode ...

  7. 计算机考研数据结构算法模板

    计算机考研数据结构算法模板 前言 临近考研,想给考研党们分享一些比较通用的算法模板,让复习更高效一点.如果备考时间足够长,备考人应该有大量时间刷大量习题,会有自己总结的算法模板,笔者文章参考了王道考研 ...

  8. 数据结构算法,学习笔记

    算法学习资源 93k 算法小抄.leetcode https://github.com/labuladong/fucking-algorithm 算法可视化https://visualgo.net/z ...

  9. 微软等数据结构+算法面试100题全部答案集锦

    微软等数据结构+算法面试100题全部答案集锦 作者:July.阿财. 时间:二零一一年十月十三日. 引言 无私分享造就开源的辉煌. 今是二零一一年十月十三日,明日14日即是本人刚好开博一周年.在一周年 ...

最新文章

  1. 怎么主动发起话题_谈恋爱怎样找话题聊天?
  2. 2019建中台,2020拆中台,为什么很多公司中台战略宣告“失败”?
  3. 使用 Boost.MPI 的 gather() 的示例
  4. android dns解析
  5. C++ 操作符new和delete
  6. ASP.NET本质论阅读----应用程序对象
  7. 2. 字符串、向量和数组
  8. 阿里云linux服务器到期后续费,网站打不开解决方法之一
  9. 【转】oracle order by 处理NULL 值
  10. Momentum, RMSprob and Adam
  11. Matlab中散点图绘制详细教程scatter函数(附matlab代码)
  12. 主板检测卡c5_电脑主板检测卡的代码是什么意思_电脑主板故障诊断检测卡代码汇总(5)_飞翔教程...
  13. Android 画笔演示功能的实现
  14. The server time zone value 'XXXXXXXXX' is unrecognized or represents more tha
  15. 使用LibreOffice实现word转pdf(python代码)
  16. C#静态拓展方法的用法
  17. 解决 CodeLite 中文乱码的问题,并支持C++11特性
  18. dell笔记本外接显示器_戴尔笔记本怎么连接外接显示器?
  19. gcc编译-m32、-mx32有什么区别
  20. 【毕业设计】电商产品评论数据分析可视化(情感分析) - python 大数据

热门文章

  1. 思科路由和交换限制用户出外网的几种策略
  2. mysql 设置按天分表_MySQL 优化实战记录
  3. MySQL分组函数使用的其他注意事项
  4. Redis中的代理Sharding
  5. Redis的诞生历程
  6. 用户中心 - 修改用户信息
  7. 动态代理源码分析,实现自己的动态代理
  8. 分布式文件系统研究-fastDSF架构介绍
  9. eureka架构图原理
  10. 安装织梦index.php错误,dedecms安装进入后台出现DedeCMS Error:(PHP等