
数据结构与算法
追风弧箭
这个作者很懒,什么都没留下…
展开
-
快速排序算法
快速排序快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 实现方法: 1、挖坑法 void quick_sort(int a[], int low, int hi原创 2018-01-31 15:37:58 · 240 阅读 · 0 评论 -
简单选择排序
简单选择排序每趟从待排序的记录中选出关键字最小的记录,顺序放在已排序类的序列末尾,直到全部排列结束。 (1)从待排序序列中,找到关键字最小的元素; (2)如果最小元素不是待排序序列的第一个元素,将其和第一个元素互换; (3)从余下的 N - 1 个元素中,找出关键字最小的元素,重复(1)、(2)步,直到排序结束。 C++实现代码如下:void simple_sort(int原创 2018-01-31 16:05:47 · 231 阅读 · 0 评论 -
直接插入排序
直接插入排序直接插入排序是一种简单的插入排序法,所以适用于少量数据的排序。 基本思路:把待排序的纪录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的纪录插入完为止,得到一个新的有序序列。 基本步骤: 1.从第一个元素开始,该元素可以认为已经被排序 2.取出下一个元素,在已经排序的元素序列中从后向前扫描 3.如果该元素(已排序)大于新元素,将该元素移到下一位置 4.原创 2018-01-31 16:54:43 · 284 阅读 · 0 评论