![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
数据结构上各种基础的实现
草鱼不吃草
这个作者很懒,什么都没留下…
展开
-
快速排序
快速排序快速排序是在实践中最快的已知排序算法,它的平均运行时间是O(N log N)是非常精炼且高度优化的内部循环最坏情况为O(N2)基于分治的思想//快速排序//划分操作,返回划分位置int partition(int a[], int left, int right){ int pivot = a[left]; while (left < right) { while (left < right && a[right] >= pi原创 2020-09-15 22:05:27 · 64 阅读 · 0 评论 -
希尔排序
希尔排序也叫缩小增量排序选取增量为 len/2 (不是最佳)//希尔排序:缩小增量序列排序void ShellSort(int a[], int len) { int i, j; int Increment;//增量 int tmp; for (Increment = len / 2; Increment > 0; Increment /= 2) { for (i = Increment; i < len; i++) { tmp = a.原创 2020-09-15 17:58:33 · 53 阅读 · 0 评论 -
直接插入排序
直接插入排序将剩余数据中的第一项插入到已排序数据中,直至全部数据遍历完成1. 传入参数为数组地址和数组长度2. 破坏性操作,原数组值已经改变void IsertionSort(int a[], int len) { int i, j; int temp; for (i = 0; i < len; i++) { temp = a[i]; for (j = i; j > 0 && temp < a[j - 1]; j--) { a[j] = a[原创 2020-09-15 17:31:42 · 89 阅读 · 0 评论