题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 解法1 首先对这道题,我们可以通过找规律来解 一只青蛙可以跳上1级台阶,也可以跳上2两级台阶 当n = 1时,有1种跳法 当n = 2时,有2种跳法 当n ...
题目描述 一只青蛙一次可以跳上 级台阶,也可以跳上 级 它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 问题分析 由于每次跳的阶数不确定,没有一个固定的规律,但是可以了解的是后一次跳是在前一次跳的结果上累加的,因此我们可以考虑使用递归的方法来解决问题。 那么从递归的三个步骤开始寻找解决方案: . 递归截止条件。 由于每次可以跳 n的任意阶数,因此无论有多少阶,都可以一次跳完,为了表 ...
2016-08-22 17:42 0 2295 推荐指数:
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 解法1 首先对这道题,我们可以通过找规律来解 一只青蛙可以跳上1级台阶,也可以跳上2两级台阶 当n = 1时,有1种跳法 当n = 2时,有2种跳法 当n ...
本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项。 思路 如果直接写递归函数,由于会出现很多重复计算,效率非常底,不采用。 要避免重复计算 ...
关于本题,前提是n个台阶会有一次n阶的跳法。分析如下: f(1) = 1 f(2) = f(2-1) + f(2-2) //f(2-2) 表示2阶一次跳2阶的次数。 f(3) = f(3-1) + f(3-2) + f(3-3) ... f(n) = f ...
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 分析:青蛙每次只有一阶或者两阶两种跳法,那么: 假设第一次跳的是一阶,那么剩下的n-1个台阶,跳法是f(n-1) 假设第一次跳的是两阶,那么剩下的n-2个台阶,跳法是f ...
面试4题: 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解题代码一 ...
面试7题: 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列 ...
面试9题: 题目:用两个栈实现队列 题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解题思路:有两个栈stackA,stackB,A为入栈,B为出 ...
题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 题目分析 我们如果要替换 ...