一道面试题 求解答
一道面试题,大概意思是这样的:
一步走出去有两种选择:1米 或者 2米 ,现在一共需要走 10米,请问一共有多少种走法?用java程序模拟出来.
举个例子:一次只走1米 就要走 10 步,但是无论怎么走都只能算一种方法; 一次只走2米 就要走 5 步,也是无论这5步怎么走都是一种方法, 当1米和2米都走的时候就是一个排列组合,用程序模拟这一个过程,算出一共多少种走法
求高手解答 1 楼 beee 2012-05-15 没明白你的意思 2 楼 wang吖 2012-05-15 10米的距离,现在假设你去走完这10米,但是你每一步可以走2米也可以走1米,问你共有多少种走法
举个例子:一次只走1米 就要走 10 步,但是无论怎么走都只能算一种方法; 一次只走2米 就要走 5 步,也是无论这5步怎么走都是一种方法, 当1米和2米都走的时候就是一个排列组合,用程序模拟这一个过程,算出一共多少种走法 3 楼 wangtengxp 2012-05-16 public class walker {
private static int wayOfWalking = 0;
/**
* @param length 路程长度
* @param breadCrumb 走过的路径
*
* */
private static void walking(int length,String breadCrumb)
{
if(length==0)
{
wayOfWalking++;
System.out.println(breadCrumb);//输出路径
return;
}
if(length<0)
return;
walking(length-1,breadCrumb+"1");
walking(length-2,breadCrumb+"2");
}
public static void main(String[] args)
{
walking(10,"");
System.out.println(wayOfWalking);
}
}
4 楼 wang吖 2012-05-18 谢谢 山里有座庙的故事你体现的太好了 我知道应该用递归 但是我没有找到递归的结束条件 高手!!!