递归的概念:直接或者间接地调用自身的算法称为递归算法。 递归让一些复杂的问题变得简单易懂易于分析,如汉诺塔问题和Ackerman函数,在排序快排算法和归并排序算法中也有递归的运用。 汉诺塔: ackerman函数: 递归的缺点:需要不断开拓堆栈空间,占用空间大,可能导致内存溢出,并且运行效率低,不能 ...
分类:
编程语言 时间:
2019-10-13 18:29:56
阅读次数:
93
分治法的思想 分治法就是把一个大问题分解为规模较小的相同小问题,这些小问题的解合并起来就是大问题的解,但是小问题的规模要是一样且相同的, 不能分解出来的一个小问题是求最大值,而 另一个小问题是求最小值,这种情况是不适合用分治的 如果要处理一个较大规模的问题,比如说大整数的加减乘除,是可以分解成最末位 ...
分类:
其他好文 时间:
2019-10-11 23:29:19
阅读次数:
118
刚好闲下来,顺便收集了一些关于爱奇艺,字节跳动,抖音的面试题目。也整理好了答案,希望对即将面试和跳槽的小伙伴有所帮助 一.2019爱奇艺秋招Android 1.使用堆排序方法排序(45,78,57,25,41,89),初始堆为( 89,45,78,25,41,57 ) 2.6个圆盘的汉诺塔,总的移动 ...
分类:
移动开发 时间:
2019-10-11 18:17:17
阅读次数:
213
P1242 新汉诺塔 此题的最后一个数据点不适用于贪心算法,所以每次将大的优先移到目标位置有很小的概率不是最优解,但是毕竟是最优解的概率还是很大的。所以用模(yi)拟(tong)退(luan)火(gao)就可以了,反正也是随机碰碰运气的。概率嘛~~~~,只要你的srand能过,那就能过啦。 ...
分类:
其他好文 时间:
2019-10-06 17:00:09
阅读次数:
86
汉诺塔问题 汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个 ...
分类:
其他好文 时间:
2019-10-06 00:31:47
阅读次数:
66
因为把第三节写完了,所以必须要做个总结。 首先题目是递归与分治。 要我说其实主题就三个,递推(并由递推引进递归,毕竟递推要比递归好理解些),组合计数,分治。 一,递推。(递归) 1,什么是递推。 一串序列存在一种关系,可以通过这种关系从前项或前几项中推出后面的项。 2,怎么个应用法? 一般你需要做三 ...
分类:
其他好文 时间:
2019-10-04 17:11:56
阅读次数:
73
描述 【题解】 之前写过一次详解:https://www.cnblogs.com/AWCXV/p/11395875.html 【代码】 ...
分类:
其他好文 时间:
2019-10-03 16:23:46
阅读次数:
132
int dp[maxn][maxn]; signed main() { /*n个盘 m座塔*/ int n,m; n=31,m=31; /*初始化动规边界*/ dp[2][1]=1;//初始化两座塔的情况 for(int i=3; i<=m; ++i) dp[i][1]=1;//初始化只有一个盘的情... ...
分类:
其他好文 时间:
2019-09-22 12:58:30
阅读次数:
94
函数使用 为什么要使用函数 ? 一个较为复杂的系统往往需要若干个子系统,然后分别对这些子系统进行开发。通常将相对独立的,经常使用的功能抽象为函数,函数编写好以后可以被重复利用,这样有利于代码重用,提升开发效率,增强程 ...
分类:
其他好文 时间:
2019-09-14 00:56:25
阅读次数:
76