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

排序(一):插入排序

时间:2015-11-26 20:55:00      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

前言

快被数据结构与算法碾成渣渣了,决定开始补补

参考资料:算法导论(有MIT公开课-算法导论) 、Data Structures and Algorithms in Python、数据结构与算法


 

插入排序(insertion-sort)

插入排序的基本思想每次将一个带排序的记录,按其关键字大小插入到前面已经排好序的子表中的适当位置,直到

全部记录插完为止。

eg.对8个字母使用插入排序进行排序,每一行中对应的是外层迭代循环,每一行中的各个副本对应的是内层迭代循环,

当前被插入数组中的元素以高亮形式显示。

技术分享

代码实现(python)

1 def insertion_sort(A):
2     for k in range(1,len(A)):
3         cur=A[k]    # current element to be inserted
4         j=k         # find correct index j for currect
5         while j>0 and A[j-1]>cur:
6             A[j]=A[j-1]
7             j-=1
8         A[j]=cur    #cur is now in the rigth place

未完...

链接推荐:

麻省理工公开课《算法导论》学习笔记http://www.cnblogs.com/diliwang/p/3352946.html

算法导论读书笔记:http://www.cnblogs.com/Anker/category/436374.html

 

.........

注:转载请注明出处

排序(一):插入排序

标签:

原文地址:http://www.cnblogs.com/RoundGirl/p/4995833.html

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