摘要: 总结一下算法的各个方面: 经典算法之 快速排序:http://www.cnblogs.com/dormant/p/5317000.html 经典算法之 简单选择排序:http://www.cnblogs.com/dormant/p/5317140.html 经典算法之 冒泡排序:http://www 阅读全文
posted @ 2016-03-25 21:52 Dormant 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 今天最后研究一下二路归并排序 算法思想: 利用递归,将原始序列不断两两分块,知道每块剩下一个元素,这个元素肯定是有序的。然后利用递归的原理合并即可; 二路归并排序的最好,最坏,和平均时间复杂度为O(nlgn);是一种稳定的排序 算法实现: 阅读全文
posted @ 2016-03-25 21:17 Dormant 阅读(6832) 评论(0) 推荐(0) 编辑
摘要: 下面来说一下堆排序,这个有点复杂; 堆是一种数据结构,可以把它看成一棵完全二叉树,这棵完全二叉树满足任何一个非叶子节点的值都不大于或不小于其左右孩子节点的值,分别叫做大顶堆和小顶堆。 算法思想: 堆排序的算法分为两步:建立堆和排序; 1)建堆: 将序列调整为大顶堆,每一次都是父节点和子节点进行比较然 阅读全文
posted @ 2016-03-25 16:56 Dormant 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 今天介绍另外几种排序算法,这里讲一下 简单插入排序: 算法思想:插入排序整体的思想是对有序的数组进行排序,例如拿到一个数组,它的第一个数据肯定是有序的,从第二个数据开始开始和前边的数据 比较,当遇到比它大的数据后就向后移动数据的位置,再次向前比较,直到前边的数据比它小为止,这时就交换两个数据的位置, 阅读全文
posted @ 2016-03-25 13:25 Dormant 阅读(219) 评论(0) 推荐(0) 编辑