我们可以使用的算法设计技术有很多。插入排序用的是增量方法,即在已经排好的数组中不断加入新的元素。下面考虑一种被称为“分治法”的设计方法。 2.3.1分治法 分治法的思想:将原问题分解为几个规模较小但是类似于原问题的子问题,递归地求解这些子问题,然后合并这些子问题的解来建立原问题的解。分治模式在每层递...
分类:
编程语言 时间:
2015-07-17 14:01:15
阅读次数:
129
问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1#include using ...
分类:
其他好文 时间:
2015-07-15 11:02:28
阅读次数:
187
快速排序,应用到分治法。下面先了解一下什么是分治法?分治法,顾名思义,分而治之。先将问题进行分解,然后将分离的问题进行求解,最后将所有分离的解进行合并,得到最终解。分治法,“大事化小,小事化了,了后一合,大事得解”嗯哪,就是这样。。。。那么了解了分治法以后,再来解决问题,归并排序。(其实算法中有那么...
分类:
编程语言 时间:
2015-07-12 23:04:03
阅读次数:
150
最大K个数: 当数据量小时:快排和堆排O(Nlog(N));部分排序(选择or交换)O(N*K) 快排加分治O(N*log(K));二分查找当数据是整数且重复数比较多时:计数排序;若不是整数,则分区间计数。当数据量大时:1)小根堆:O(N*KlogK)2)分治法:hash成M份数据,取每份数据的前K...
分类:
其他好文 时间:
2015-07-11 22:46:10
阅读次数:
194
快速排序简介:快速排序是由C.A.RHoare在1962年提出。主要思想是:通过一趟排序将要排序的数据分割成独立的两个部分,其中一部分的所有数据都比另外一部分的的所有数据小,然后根据分治法的思想将这两个部分分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序数列。具体代码参考《算法精...
分类:
编程语言 时间:
2015-07-10 13:12:40
阅读次数:
92
转自:http://blog.csdn.net/morewindows/article/details/6684558快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。该方法的基本思想是:...
分类:
编程语言 时间:
2015-07-08 22:08:56
阅读次数:
141
题目意思很简单将两个有序数组合并之后的中位数找出来。题目要求使用log(m+n)的时间复杂度来做。虽然言简意赅,但不得不承认这个题目我自己想了好久也没做出来,隐约觉得应该使用寻找第k大数的算法来做,但是具体到这个题目,编码多次都以失败告终,所以不得不去网上参考下别人的思路和代码。参考链接:http:...
分类:
其他好文 时间:
2015-07-06 12:12:04
阅读次数:
108
五大常用算法之一:分治算法分治算法一、基本概念 在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如...
分类:
编程语言 时间:
2015-07-01 17:44:13
阅读次数:
150
序快速排序(QuickSort)也是一种排序算法,对包含n个数组的输入数组,最坏情况运行时间为O(n^2)。虽然这个最坏情况运行时间比较差,但是快速排序通常是用于排序的最佳实用选择,这是因为其平均性能相当好,期望的运行时间为O(nlgn),且O(nlgn)中隐含的常数因子很小,另外它还能够进行就地排序在虚拟环境中也能很好的工作。原理快速排序也和合并排序一样,基于分治法,分为分解、解决、合并三个步骤;...
分类:
编程语言 时间:
2015-07-01 12:12:12
阅读次数:
126
比如你获得了一个投资某个股票的机会,并且,你已经准确知道了将来几天这一只股票的相对于前一天的插值,比如为[13,-3,-25,20,-3,-16,-23,18,20,-7,12,-5,-22,15,-4,7],那么就有一个问题,从那一天买入,哪一天卖出获益最大?这里就是一个最大字数组问题。
最大字数组问题:在一个数组中找出最大的非空连续子数组
常见方法,暴力求解找出所有的组合,共有C(n...
分类:
编程语言 时间:
2015-06-30 18:16:08
阅读次数:
200