摘要: 题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 算法描述: 如果从头到尾进行扫描的话,时间复杂度为O(n),但这种方法过于简 阅读全文
posted @ 2016-03-26 14:46 Dormant 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 今天来简单说一下计数排序: 当要实现一个排序算法要求时间复杂度是O(n),允许使用常量大小的辅助空间,并且数据的大小在一个可控的范围内,就可以使用计数排序了,也就是辅助数组的大小记录数据的个数,然后输出即可; 算法实现: 阅读全文
posted @ 2016-03-26 10:07 Dormant 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 总结一下算法的各个方面: 经典算法之 快速排序: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 阅读(6820) 评论(0) 推荐(0) 编辑
摘要: 下面来说一下堆排序,这个有点复杂; 堆是一种数据结构,可以把它看成一棵完全二叉树,这棵完全二叉树满足任何一个非叶子节点的值都不大于或不小于其左右孩子节点的值,分别叫做大顶堆和小顶堆。 算法思想: 堆排序的算法分为两步:建立堆和排序; 1)建堆: 将序列调整为大顶堆,每一次都是父节点和子节点进行比较然 阅读全文
posted @ 2016-03-25 16:56 Dormant 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 今天介绍另外几种排序算法,这里讲一下 简单插入排序: 算法思想:插入排序整体的思想是对有序的数组进行排序,例如拿到一个数组,它的第一个数据肯定是有序的,从第二个数据开始开始和前边的数据 比较,当遇到比它大的数据后就向后移动数据的位置,再次向前比较,直到前边的数据比它小为止,这时就交换两个数据的位置, 阅读全文
posted @ 2016-03-25 13:25 Dormant 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序和选择排序一样是我们接触相对早的一种排序算法。下面简单讲解一下冒泡排序的思想: 算法思想: 冒泡排序,顾名思义,排序的过程就像气泡在水里上升一样。就是对数组进行不断地扫描,每当遇到比标记的数据大的元素就交换两个数据。这样扫描一遍之后就会产生一个最小或最大的元素位于最终的位置上。之后进行第二遍 阅读全文
posted @ 2016-03-24 21:33 Dormant 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 现在简单来讲一下选择排序的思想: 我们接触选择排序的时间很长了,也是我们编程时需要最先接触的程序。他的思想确实较简单。 算法思想: 选择排序需要针对数组从头到尾进行扫描,其实就是记录下扫描一遍后整个数组的最小元素和最小元素的位置,然后和第一个元素进行交换,这样经过一遍排序我们就可以确定一个元素的最终 阅读全文
posted @ 2016-03-24 21:01 Dormant 阅读(316) 评论(0) 推荐(1) 编辑
摘要: 想利用这一两天复习一下几个经典的排序算法,今天先来看一下快速排序: 我们知道快速排序的思想是:先找到一个枢轴,然后进行分块,将其中元素比枢轴小的元素放到枢轴左边,将比他大的放到他的右边,这样我们就完成了一遍基本排序。我们确定了一个数字在排好序的位置;之后利用递归再将枢轴左边的数据分块,将右边的数据分 阅读全文
posted @ 2016-03-24 20:20 Dormant 阅读(275) 评论(0) 推荐(1) 编辑
摘要: 题目描述: 利用两个队列实现一个栈,实现先进后出的功能。 算法实现: 算法思想: 我们知道两个队列实现一个栈,其中队列的机制是先进先出,栈的机制是先进后出;那么我们需要驳斥一个队列为空,如果pop数据时需要将有数据的队列的数据存入空的队列,让有数据的队列只剩一个数据就可弹出。具体可以观察代码更加明确 阅读全文
posted @ 2016-03-24 20:05 Dormant 阅读(487) 评论(0) 推荐(0) 编辑