您好,欢迎访问三七文档
递归六道练习题:1.请编写一段代码,要求计算1+2+3+100并输出结果。在这段代码中不能出现for,while关键字。2.递归经典面试题一个人去买汽水。1块钱一瓶,三个瓶盖可以换一品汽水,2个空瓶可以换一瓶汽水。请问:20块钱总共能买到多少瓶汽水?3.求n的阶乘(n!)4.猴子吃桃子问题,猴子第一天摘下若干个桃子,当即吃了快一半,还不过瘾,又多吃了一个。第二天又将仅剩下的桃子吃掉了一半,又多吃了一个。以后每天都吃了前一天剩下的一半多一个。到第十天,只剩下一个桃子。试求第一天共摘了多少桃子?5.Fibonacci(斐波拉切)数列兔子繁殖问题:从某天开始把雌雄各一对小兔子放入养殖场中,小兔子经过一个月长大,长大后,雌兔每月产雌雄各一的一对小兔子。每对新兔也是一个月长大,长大后每对新兔子也是每月产一对兔子。试问第n个月养殖场共有多少对兔子6.台阶问题:楼梯有N阶,上楼可以一步上一阶,也可以一次上二阶。编写一个程序,计算共有多少种不同的走法。答案:1.publicstaticvoidmain(String[]args){inti=add(100);System.out.println(i);}publicstaticintadd(inti){intsum=i;if(i0){sum=sum+add(i-1);System.out.println(到+i+的sum=+sum);}returnsum;}2.publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);System.out.println(输入您要买水花的钱(一元钱一瓶):);intn=scan.nextInt();intnum=drink(n,n,n);System.out.println(n+元能喝+num+瓶);}/**n---初始瓶子,也相当于花的钱*boolet--空瓶*count--瓶子总数*cap--瓶盖*/publicstaticintdrink(intboolet,intcap,intnum){//输入的也是空瓶,瓶盖,能换的瓶子数intcount=num;System.out.println(boolet+,+cap+,+num);if(boolet1||cap2){count=count+drink((boolet/2+cap/3+boolet%2),(boolet/2+cap/3+cap%3),(boolet/2+cap/3));}returncount;}3.publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);System.out.println(请输入您要求的阶乘数:);intn=scan.nextInt();System.out.println(n+的阶乘是:+factorial(n));}publicstaticintfactorial(intn){intnum=n;if(num1){num=num*factorial(n-1);}returnnum;}4.publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);System.out.println(请输入您要求的天数(第10天):);System.out.println(eat(scan.nextInt()));}publicstaticinteat(intn){//n代表天数if(1==n){return1;}else{return2*(eat(n-1)+1);//反着算的,其实是!}}5.publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);System.out.print(请输入第n个月的兔子数量:n=);intn=scan.nextInt();intnum=counting(n);System.out.println(num);}publicstaticintcounting(intn){if(n==2||n==1){return1;}else{returncounting(n-1)+counting(n-2);}}6.publicstaticvoidmain(String[]args){System.out.println(walk(6));}publicstaticintwalk(intn){if(n==1){//当只有最后只剩下一阶的时候才能只有一种选择return1;}elseif(n==2){return2;}else{returnwalk(n-1)+walk(n-2);}}
本文标题:递归六道练习题
链接地址:https://www.777doc.com/doc-1801373 .html