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

各种排序算法(连载中。。。)

时间:2015-01-10 23:32:52      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

新博客开张,就拿排序算法开张吧。。。我尽量从最简单的排序算法开始,不定期连载更新中~

ps:在我学会JAVA和C++之前,程序都用C来写吧,水平有限,大家凑和着看吧 重点是算法!~

技术分享(图片来源于网络)

 目录:

1.插入排序——直接插入排序。

2.插入排序——希尔排序。

3.选择排序——简单选择排序。

4.选择排序——堆排序。

5.交换排序——冒泡排序。

6.交换排序——快速排序(大力推荐使用)。

 

1.插入排序——直接插入排序。

  具体算法描述如下:(个人认为很好理解)

  1. 从第一个元素开始,该元素可以认为已经被排序
  2. 取出下一个元素,在已经排序的元素序列中从后向前扫描
  3. 如果该元素(已排序)大于新元素,将该元素移到下一位置
  4. 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置
  5. 将新元素插入到该位置后
  6. 重复步骤2~5

  ps:可以采用二分查找法来减少比较操作的数目,称为二分查找插入排序法。

  C语言代码如下:

  

各种排序算法(连载中。。。)

标签:

原文地址:http://www.cnblogs.com/yangshenghui/p/4215819.html

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