排序算法学习之路——冒泡排序
发布时间:2016/04/13 作者:迹忆 分类:算法
-
冒泡排序也是一种简单直观的排序算法。其思想是:它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有...
查看全文
发布时间:2016/04/13 作者:迹忆 分类:算法
冒泡排序也是一种简单直观的排序算法。其思想是:它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有...
查看全文发布时间:2016/04/12 作者:迹忆 分类:算法
选择排序是一种简单直观的排序算法。其基本思想是在未排序的序列中选择一个最大(或最小)元素放到末尾(注意:这里是未排序序列的末尾,可以认为是有序序列的起始位置)。...
查看全文发布时间:2016/04/11 作者:迹忆 分类:算法
堆排序(Heapsort):是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节...
查看全文发布时间:2016/04/09 作者:迹忆 分类:算法
在快速排序这篇文章中我们介绍了快速排序的原理和步骤,以及使用递归的方式实现了该算法。而且在上篇文章中我们还提到使用非递归的方式实现该算法,本篇我们就使用非递归的方...
查看全文发布时间:2016/04/08 作者:迹忆 分类:算法
快速排序是由东尼•霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比...
查看全文发布时间:2016/04/08 作者:迹忆 分类:算法
其实递归函数底层借助的无非就是栈的机制。在这篇文章中我们不使用递归函数,直接借助栈的机制来实现归并排序。...
查看全文发布时间:2016/04/08 作者:迹忆 分类:算法
归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。...
查看全文发布时间:2016/03/21 作者:迹忆 分类:算法
单例设计模式是最常用的设计模式之一。单例设计模式,单就其名字就可以大概知道其意义。单,也就是一个;例,也就是实例对象。所以说单例就是只有一个实例化对象。单例设计模...
查看全文发布时间:2016/01/05 作者:迹忆 分类:算法
排序算法学习之路之希尔排序,希尔排序是基于插入排序发展的,又叫递减增量排序。对有序的数据进行操作的时候效率很高,可以达到线性排序的效率...
查看全文发布时间:2015/12/10 作者:迹忆 分类:算法
表插入排序,顾名思义,借助一个索引表对原表进行插入排序,这样做的好处就是省去了对原来表中元素的移动过程。表插入排序的时间复杂度依然是O(n²)...
查看全文发布时间:2015/12/08 作者:迹忆 分类:算法
折半插入排序根据二分查找法在有序序列中查找合适的位置将还未排序的元素插入,和直接插入排序时间复杂度相同都是O(n²)。但是数据量大的时候,其运行比直接插入排序快...
查看全文发布时间:2015/12/07 作者:迹忆 分类:算法
本篇承接 插入排序(概念篇) 奉上直接插入排序的实现步骤以及实现代码由于概念篇已经有了大量的图解,本篇如果再进行图解,未免显得有些啰嗦,因此在这里直接罗列步骤和代码...
查看全文发布时间:2015/12/07 作者:迹忆 分类:算法
何谓‘插入排序’? 其概念如是说:每次将一个待排序的记录,按其关键字大小插入到前面已经排序好的序列中,直到全部记录插入完成为止。...
查看全文