首页 > 编程语言 > 详细

插入排序

时间:2018-08-02 13:09:18      阅读:180      评论:0      收藏:0      [点我收藏+]

插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。

 1 /////////////////////////插入排序/////////////////////////
 2 void InsertSort(int a[], int len)
 3 {
 4     int i, j;
 5     int temp = 0;
 6     for (i = 1; i < len; i++)
 7     {
 8         temp = a[i];
 9         for (j = i; j>0 && a[j-1] > temp; j--)
10         {
11             a[j] = a[j-1];
12         }
13         a[j] = temp;
14     }
15 }

平均时间复杂度为O(n^2),最好的情况是O(n),即数组已经是有序状态,最差O(n^2),辅助存储为O(1)。插入排序是稳定的排序算法。

插入排序

原文:https://www.cnblogs.com/cinvzi/p/9406531.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!