分析递归算法三种方法替换法、迭代法、通用法(mastermethod)作用:分析递归算法的运行时间分治算法将一个问题分解为与原问题相似但规模更小的若干子问题,递归地解这些子问题,然后将这些子问题的解结合起来构成原问题的解。这种方法在每层递归上均包括三个步骤:divide(分..
分类:
编程语言 时间:
2017-04-14 10:16:47
阅读次数:
248
http://poj.org/problem?id=1142 题意: 给出一个数n,求大于n的最小数,它满足各位数相加等于该数分解质因数的各位相加。 思路:直接暴力。 ...
分类:
其他好文 时间:
2017-04-05 09:51:06
阅读次数:
184
问题:研究表明,在某些应用下,1∶35的比例就会使某些分类方法无效,甚至1∶10的比例也会使某些分类方法无效。(1)少数类所包含的信息就会很有限,从而难以确定少数类数据的分布,即在其内部难以发现规律,进而造成少数类的识别率低(2)数据碎片。很多分类算法采用分治法,样本空间的逐渐划分会导致数据碎片问题 ...
分类:
其他好文 时间:
2017-04-01 00:48:25
阅读次数:
291
算法训练 数字三角形 时间限制:1.0s 内存限制:256.0MB 时间限制:1.0s 内存限制:256.0MB 问题描述 (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大。 ●每一步可沿左斜线向下或右斜线向下走; ●1<三角形行数≤ ...
分类:
编程语言 时间:
2017-03-31 23:45:24
阅读次数:
294
今天刚刚学了动态规划,把书上的代码敲了一下,在此留下一笔。动态规划与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。在子问题的求解过程中,有很多子问题被重复计算了。于是我们可以用一个表来记录所有已解决的子问题的的答案。不管该问题以后是否被用 ...
分类:
编程语言 时间:
2017-03-31 09:22:52
阅读次数:
246
本文转自:http://www.cnblogs.com/airwindow/p/4067902.html http://hi.baidu.com/35661327/blog/item/d5463e17f1e8d011972b439c.html 动态规划、分治法和贪心法都是利用求解子问题,而后利用子问 ...
分类:
其他好文 时间:
2017-03-23 23:23:29
阅读次数:
201
问题定义: 假设A[1...n]是一个有n个不同数的数组。若i<j且A[i]>A[j]则称(A[i], A[j])为数组A的一个逆序对。 例如数组<2, 3, 8, 6, 1>有(2, 1),(3, 1),(8, 6),(8, 1)和(6,1)5个逆序对。 对于这个问题,直观上进行求解的话,使用暴力 ...
分类:
编程语言 时间:
2017-03-20 14:01:57
阅读次数:
539
解法 O(n^3)O(n^2)O(nlogn)O(n) (当j确定时,S【j】-S【i-1】最大即可,就需要找到最小的S【i】,便利一遍数组即可) 三个for循环i,j=i&j<n,k=i&k<j,sum+=a[k] 两个for循环,找出前i项和。i,j=i&j<n,best=max(best,S【 ...
分类:
其他好文 时间:
2017-03-14 17:33:56
阅读次数:
115
著名题单,最初来源不详。直接来源:http://blog.csdn.net/a1dark/article/details/11714009 OJ上的一些水题(可用来练手和增加自信) (POJ 3299,POJ 2159,POJ 2739,POJ 1083,POJ 2262,POJ 1503,POJ ...
分类:
其他好文 时间:
2017-03-14 10:39:22
阅读次数:
296
目录 1 问题描述 2 解决方案 2.1 蛮力法 2.2 分治法(归并排序) 1 问题描述 给定一个随机数数组,求取这个数组中的逆序对总个数。要求时间效率尽可能高。 那么,何为逆序对? 引用自百度百科: 设 A 为一个有 n 个数字的有序集 (n>1),其中所有数字各不相同。 如果存在正整数 i, ...
分类:
编程语言 时间:
2017-03-06 20:47:14
阅读次数:
340