递归
ccDLlyy
不忘初心,方得始终
展开
-
母牛的故事(递归或迭代实现)
D - 母牛的故事Crawling in process...Crawling failedTime Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64uSubmitStatus Practice HDU 2018 uDebugDescript转载 2016-08-18 22:21:13 · 7933 阅读 · 0 评论 -
找到第K大数
//找到第K大数//思想:问题分解(递归实现)//先快排,左边大于等于基准数,右边小于等于基准数//左边为s1,右边为s2int FindKthLargest(int array[],int K,int left,int right)//array为array[left]到array[right]{ //先快排;左大右小 int i=left; int j=rig原创 2016-09-11 10:53:36 · 610 阅读 · 0 评论 -
递归实现全排列
#include int swap(int *a,int *b){ int temp=*a; *b=*a; *a=temp;}void sort(int array[],int now,int top)//now为排到的当前下标;top为下标头{ if(now==top){ for(int i=0;i<=top;i++)原创 2016-09-11 11:53:28 · 681 阅读 · 0 评论 -
递归基本法则
一,基准情形无需递归就可解出,即递归出口二,不断推进用递归求解的情形要不断向基准情形推进三,设计法则假设所有的递归调用都能成功四,合成效益法则在解决一个问题的同一实例时,切勿在不同的递归调用中做重复性的工作原创 2016-08-31 12:41:54 · 488 阅读 · 0 评论 -
找主元素
/*找出出现超过一半的数思路:两个两个的比较,相等,放新数组里,不相等,不处理最后留下一个,肯定是,没留下,没符合条件的数原理:出现超过一半的,在新数组里还是符合正确性:比如,有十个元素,majority出现6次,其他四次,假如比较时,majority和另一个比较的,都减掉,majority有5个,其他有4个,还是满足;对比的俩均不是majority,均删掉,更满足了;对于加入新数组的原创 2016-09-04 14:58:29 · 717 阅读 · 0 评论 -
递归,递推,分治,贪心,动态规划......
一.递归:函数调用自身二.递推:由递推公式求解,每个子问题均有确切的解,即每个阶段只有一个状态,静态过程。实现:1.自顶向下,递归,有时遇到重复计算的项,可以先存到外部数组,用到时先判断有没有计算过 2.自底向上,解决掉了存在重复用的项的问题 例子:斐波那契数列三.分治:大问题分解为小问题,再整合成大问题。满足:1) 该问题的规模缩小到一定的程度就可以容易地解决2) 该问题原创 2017-02-23 19:39:30 · 1169 阅读 · 0 评论