默认计划
9451 students enrolled
(205 reviews)
《程序设计基础》
Price Free
音频听课 The mobile phone supports one-click class. (Try)

递归是分治策略的最好应用。递归思想能更自然的反应问题,使程序易于理解和易于调试,递归程序的缺点是要占用大量的时间和空间。

推荐使用与或结点图来描述递归函数,它可以使较抽象的事情形象化和形式化,有助于对问题的分析和理解

[Full Article]
//从大到小冒泡排序
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);
    }
}
[Full Article]