转自:http://www.oracle.com/technetwork/cn/articles/hartley-recursive-086819-zhs.html递归数据库处理,也称为材料清单 或零件分解问题,适用于包括人力资源、制造业、金融市场和教育在内的多种应用领域。这类处理中所涉及的数据称为...
分类:
数据库 时间:
2014-08-05 18:19:09
阅读次数:
545
本章主要是算法知识的基础讲解,介绍了循环不变式,几个简单的排序算法,递归分治算法等内容。
1、循环不变式
循环不变式主要用来说明算法的正确性,那么什么是循环不变式呢,其实就是在循环过程中,一些元素数据必须保持的一些性质,例如在插入排序中,数组为A,必须保证三个性质:
(1) 初始化:在循环开始之前,循环不变式是成立的,即:A[0]是有序的,A[1...n-1]是无序的。
(2) 保持:在循...
分类:
其他好文 时间:
2014-08-05 15:53:01
阅读次数:
220
求正数数组内和为指定数字的合并总数
比如[5, 5, 10, 2, 3] 合并值为 15 : 有4种 : (5 + 10, 5 + 10, 5 + 5 + 2 + 3, 10 + 2 + 3)
分析:有的时候,一个题目不能够立刻想到比较优化的想法,就可以先找到一个解决方案,然后根据方案的不足进行优化。而且这个时候,逆转一下思路,便会柳暗花明。由递归到动态规划,不就是如此么?
我们...
分类:
其他好文 时间:
2014-08-05 15:52:29
阅读次数:
177
一、概念: 在计算机科学中,分治法是建基于多项分支递归的一种很重要的算法范式。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以寄简单的直接求解,原问题的解即子问题的解的合并。 这个技巧是很多高校算法的基础,如排序算法(快速排序、归并排序)、...
分类:
其他好文 时间:
2014-08-05 15:33:29
阅读次数:
178
Pythonbreak语句Pythonbreak语句,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果您使用嵌套循环,break语句将停止执行最深层的循环..
分类:
编程语言 时间:
2014-08-05 03:11:59
阅读次数:
403
1.动态规划和子序列 1.1 动态规划的特征: a)最优子结构,求问题的解必须获取子问题的最优解; b) 重叠子问题,使用原始的递归存在大量的重复计算。 1.2 子序列的概念: a)子序列中的元素都是原字符串中的元素; b)子序列中元素的排列顺序,与他们在原字符串中的顺序...
分类:
其他好文 时间:
2014-08-05 03:00:08
阅读次数:
177