
算法
qq29898765
这个作者很懒,什么都没留下…
展开
-
图解排序算法(四)之归并排序
图解排序算法(四)之归并排序 基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而**治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。** 分而治之 可以看到这种结构很像一棵完全二叉树,本文的归并排序我们采用递归去实现...转载 2019-02-17 15:20:14 · 119 阅读 · 0 评论 -
图解排序算法(一)之3种简单排序(选择,冒泡,直接插入)
图解排序算法(一)之3种简单排序(选择,冒泡,直接插入) 排序是数据处理中十分常见且核心的操作,虽说实际项目开发中很小几率会需要我们手动实现,毕竟每种语言的类库中都有n多种关于排序算法的实现。但是了解这些精妙的思想对我们还是大有裨益的。本文简单温习下最基础的三类算法:选择,冒泡,插入。 先定义个交换数组元素的函数,供排序时调用 /** * 交换数组元素 * @param ...转载 2019-02-17 15:18:22 · 242 阅读 · 0 评论 -
图解排序算法(二)之希尔排序
图解排序算法(二)之希尔排序 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。本文会以图解的方式详细介绍希尔排序的基本思想及其代码实现。 基本思想 ** 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量...转载 2019-02-17 15:18:57 · 122 阅读 · 0 评论 -
图解排序算法(三)之堆排序
图解排序算法(三)之堆排序 预备知识 堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种**选择排序,**它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆 ** 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。如下图:** 同时,我们...转载 2019-02-17 15:19:55 · 152 阅读 · 0 评论 -
排序算法总结
排序算法总结 所有的排序算法,默认: 小的在前 大的在后 参考博客 https://blog.youkuaiyun.com/misayaaaaa/article/category/6833062 https://www.cnblogs.com/onepixel/p/7674659.html https://github.com/francistao/LearningNotes/blob/master/P...原创 2019-02-17 15:25:15 · 127 阅读 · 0 评论