数据结构算法
文章平均质量分 68
麻瓜先生
Java程序员
展开
-
汉诺塔递归算法
当盘子的个数为n时,移动的次数应等于2^n – 1(有兴趣的可以自己证明试试看)。后来一位美国学者发现一种出人意料的简单方法,只要轮流进行两步操作就可以了。首先把三根柱子按顺序排成品字型,把所有的圆盘按从大到小的顺序放在柱子A上,根据圆盘的数量确定柱子的排放顺序:若n为偶数,按顺时针方向依次摆放 A B C; 若n为奇数,按顺时针方向依次摆放 A C B。 ⑴按顺时针方向把圆盘1从现在原创 2015-06-02 10:12:37 · 458 阅读 · 0 评论 -
斐波那契数列算法分析--递归、非递归和公式法
类似问题有: 1、排列组合 有一段楼梯有10级台阶,规定每一步只能跨一级或两级,要登上第10级台阶有几种不同的走法? 这就是一个斐波那契数列:登上第一级台阶有一种登法;登上两级台阶,有两种登法;登上三级台阶,有三种登法;登上四级台阶,有五种登法…… 1,2,3,5,8,13……所以,登上十级,有89种走法。 2、一枚均匀的硬币掷10次,问不连续出现正面的可能情形有原创 2015-06-02 10:29:58 · 924 阅读 · 0 评论