汉诺塔问题: 如果只有一个盘子,则直接将该盘从A柱移动到C柱。 如果有n个盘子,则可分为以下三步: 1.将n-1个盘子从A柱借助C柱移动到B柱。 2.将第n个盘子从A柱移动到C柱。 3.将B柱上的n-1个盘子移动到C柱上。 c语言递归算法为: 步数为:2^n-1步。 ...
分类:
其他好文 时间:
2017-06-30 21:03:20
阅读次数:
120
数列1,1,1,3,5,9,17,31,57,105……N大于3时,第N个数为前三个数之和。 ...
分类:
编程语言 时间:
2017-06-29 17:48:36
阅读次数:
157
<html> <head> <meta http-equiv="content-type" content="text/html;charset=GB2312"/> <title> 4.4 使用递归算法计算阶乘 </title> </head> <body style="overflow:auto; ...
分类:
编程语言 时间:
2017-06-25 19:01:58
阅读次数:
151
图的遍历有深度优先和广度优先算法。 深度优先遍历可描述为一个递归算法。当到达顶点v时,具体操作是: ①访问(v); ②for(与v相邻的每个顶点w) 遍历(w); 广度优先算法借助队列,当访问v后, 将v相邻的仍未访问过的顶点加到队列后面,然后访问队列头: 可以使用深度优先遍历和广度优先遍历确定拓扑 ...
分类:
编程语言 时间:
2017-06-24 17:17:04
阅读次数:
137
图的遍历有深度优先和广度优先算法。 深度优先遍历可描述为一个递归算法。当到达顶点v时,具体操作是: ①访问(v); ②for(与v相邻的每个顶点w) 遍历(w); 广度优先算法借助队列,当访问v后, 将v相邻的仍未访问过的顶点加到队列后面,然后访问队列头: 可以使用深度优先遍历和广度优先遍历确定拓扑 ...
分类:
编程语言 时间:
2017-06-24 12:32:12
阅读次数:
159
定义单链表的结点 我们采用的单链表是带头结点的。 需要遍历一遍链表,在遍历过程中,把遍历的节点一次插入到头部。在这个过程之后,第一个节点成了最后节点,因此要特殊处理,改其后继为NULL。 测试代码: 参考:http://blog.csdn.net/kangroger/article/details/ ...
分类:
编程语言 时间:
2017-06-20 14:59:16
阅读次数:
148
汉诺塔问题是递归函数的经典应用,它来自一个古老传说:在世界刚被创建的时候有一座钻石宝塔A,其上有64个金蝶。所有碟子按从大到小的次序从塔底堆放至塔顶。紧挨着这座塔有另外两个钻石宝塔B和C。从世界创始之日起,波罗门的牧师就一直在试图把塔A上的碟子移动到C上去,其间借助于塔B的帮助。每次只能移动一个碟子 ...
分类:
编程语言 时间:
2017-06-19 11:02:26
阅读次数:
293
1.斐波那契 什么是斐波那契,斐波那契额就是一个序列的整数的排序,其定义如下; Fn = Fn-1 + Fn-2 with F0 = 0 and F1 = 1 也就是,0,1,1,2,3,5,8,13.。。。。 递归实现: 非递归实现: 在这里,我们如果仔细调试,会发现,递归实现,会消耗更多的时间, ...
分类:
编程语言 时间:
2017-06-19 10:59:52
阅读次数:
271
1.第一个人10岁,第二个人比第一个人大2岁,依次递增,请用递归方式算出第8个人多大? ...
分类:
编程语言 时间:
2017-06-18 00:03:45
阅读次数:
143
动态规划算法将递归算法写成非递归算法,算法把子问题的答案系统的记录在一个表内。 递归算法的三个例子 零一背包 完全背包 汽车行驶 ...
分类:
编程语言 时间:
2017-06-17 18:19:15
阅读次数:
126