- 博客(3)
- 收藏
- 关注
原创 最大子数组问题
最大子数组问题——根据题目提供我们可以知道每一天跟前一天的变化,因此为了获得最大利益我们就要找到买入日期及出售日期。我们将每日的变化数据放入一个数组,假定low为买入后第一天,high为卖出当天。通过双重循环,我们可以用暴力方法解出它可知运行时间为Ω(n^2)显然太过麻烦。 下面就来说另一种——分治策略。 我们去找一个中间断点,假定三种情况①最大子数组在断点右侧②最大子数组在断点右侧③最大子数
2016-02-06 00:03:05 210
转载 渐近记号总结
本文根据算法导论第三章总结,但其中加入了我对本章的一些补充,并且配合算法导论习题进行讲解。 相信本文会让你对渐近记号有更深入地理解。 一、定义介绍 对于某个比较简单的算法,我们有时候确实能够精确地分析出算法的复杂度,比如算法复杂度为5n^2+10n+6,但是事实上并不需要这样,因为当n足够大时,可以忽略掉低阶项和最高次项的系数,因此就引出了“渐近复杂度”,并且用“渐近记号”来
2016-02-04 22:44:19 377
原创 归并排序
归并排序,从字面来看,归并归并——递归和合并的结合体。 为什么这样说,这种排序方式通过二分的思想和递归的思想来排序。将一组数分为两部分,将两部分分别进行排序。排序后再进行合并。而每一部分的排序都可以看做一个新数列来排序,同样通过上述思想...这样不断的二分直到只剩下1个数字的数组,这时开始排序。void MERGESORT(int A[1000], int p, int r) { int q;
2016-02-03 20:45:21 201
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人