码迷,mamicode.com
首页 > 编程语言 > 详细

插入排序

时间:2017-04-03 14:50:30      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:lap   技术   数据   image   show   直接插入   分享   images   close   

插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。 
插入排序方法分直接插入排序和折半插入排序两种,这里只介绍直接插入排序。

下图演示了对4个元素(4,3,1,2)进行直接插入排序的过程,共需要(a),(b),(c)三次插入。

技术分享

 

代码示例:

技术分享
 1 <?php
 2     //插入排序
 3     include "show.php";
 4     
 5     function insert_sort(&$data)
 6     {
 7         $length = count($data);
 8         //$length个数组元素,需要循环$length-1次
 9         for($i=1; $i<$length; ++$i)
10         {
11             $key = $data[$i];
12             $j = $i - 1;
13             while($j>=0 && $data[$j] > $key)
14             {
15                 $data[$j+1] = $data[$j];
16                 $j--;
17             }
18             $data[$j+1] = $key;
19         }
20     }
21     
22     $arr = array(8,3,9,34,1,3);
23     show($arr);//打印数组
24     insert_sort($arr);
25     show($arr);
View Code

运行结果:

技术分享

插入排序

标签:lap   技术   数据   image   show   直接插入   分享   images   close   

原文地址:http://www.cnblogs.com/573583868wuy/p/6661811.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!