欢迎来到天天文库
浏览记录
ID:7234895
大小:39.00 KB
页数:4页
时间:2018-02-08
《java递归算法练习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.static void Main(string[] args) 2. { int[] num=new int[30]; 3. num[0]=1; 4. num[1]=1; 5. int first=num[0]; 6. int second=num[1]; 7. for (int i = 2; i < num.Length; i++) 8. { 9.
2、num[i] = first + second; 10. first = second; 11. second = num[i]; 12. } 13. Console.WriteLine(num[29]); 14. Console.ReadLine(); 15. } 16. 17. 写出来,十分的累赘,于是改为归递算法来写,一目了然,十分明了。以下是代码: 18. 19.static void M
3、ain(string[] args) 20. { 21. 22. Console.WriteLine(Process1(30)); 23. Console.ReadLine(); 24. } 25. public static int Process1(int i) 26. { 27. //计算数组{1,1,2,3,5,8.......} 第30位值 28. if (i ==
4、0) return 0; 29. if (i == 1) return 1; 30. else 31. return Process1(i - 1) + Process1(i - 2); 32. } 33. 34.做了一些练习: 1. 2.1. 计算1+2+3+4+...+100的值 3. 4.static void Main(string[] args) 5. { 6. Console.WriteLi
5、ne(Process2(100)); 7. Console.ReadLine(); 8. } 9. public static int Process2(int i) 10. { 11. //计算1+2+3+4+...+100的值 12. if (i == 0) return 0; 13. return Process2(i - 1) + i; 14. } 15. 16.2. 计
6、算1 -2 +3 +-4+ 5- 6 + 7 - 8 + 9的值 17. 18.static void Main(string[] args) 19. { 20. 21. Console.WriteLine(Process3(9) - Process3(8)); 22. Console.ReadLine(); 23. } 24. 25. public static int Process3(int i) 26. { 27.
7、 //计算1 -2 +3 +-4+ 5- 6 + 7 - 8 + 9的值 28. if (i == 0) return 1; 29. if (i == 1) return 2; 30. else return Process3(i - 2) + i; 31. } 32. 33. 34. 35.3.汉诺塔问题 1. 2.static void Main(string[] args) 3. { 4.
8、 Hanoi(5, 'A', 'B', 'C'); 5. Console.ReadLine(
此文档下载收益归作者所有