递归是分治策略的最好应用。递归思想能更自然的反应问题,使程序易于理解和易于调试,递归程序的缺点是要占用大量的时间和空间。
推荐使用与或结点图来描述递归函数,它可以使较抽象的事情形象化和形式化,有助于对问题的分析和理解
递归是分治策略的最好应用。递归思想能更自然的反应问题,使程序易于理解和易于调试,递归程序的缺点是要占用大量的时间和空间。
推荐使用与或结点图来描述递归函数,它可以使较抽象的事情形象化和形式化,有助于对问题的分析和理解
//从大到小冒泡排序 public void BubbleSort(int[] array) { for (int i = 0; i < array.Length - 1; i++) { for (int j = 0; j < array.Length - 1 - i; j++) { if (array[j] < array[j + 1]) { int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } } //一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。 public static int Foo(int i) { if (i <= 0) { return 0; } else if (i > 0 && i <= 2) { return 1; } else { return Foo(i - 1) + Foo(i - 2); } }