递归和迭代之间有什么区别?

时间:2012-09-06 17:08:06

标签: recursion iteration

我在java中搜索递归和迭代之间的区别。请包含两者的Java代码示例。

2.如果我在android中收到消息,我怎样才能打开我的打开应用程序?

  1. 如何关闭设备中运行的第三方服务?

1 个答案:

答案 0 :(得分:5)

当方法或函数在其原始参数的子集上调用自身时,会发生递归。例如,MergeSort - 它将数组分成两半并在这两半中调用自身。

递归看起来像这样,但它是一个非常人为的例子,其作用类似于下面的迭代示例:

public void doSomething(int i) {
    // code
    if (i == 10) {
        return;
    } else {
        doSomething(i + 1);
    }
}

迭代是循环或循环的一次传递。例如,此循环中的代码:

for(int i = 0; i < 10; i++){
    //code
}

将被执行10次,即有10次迭代。