20 lines
580 B
Markdown
20 lines
580 B
Markdown
|
# 递归
|
||
|
|
||
|
```cpp
|
||
|
/* 足以描述下一次迭代完成状态的参数 */ recurseFunc(/* 足以完成当前迭代的参数 */) {
|
||
|
if (/* 结束条件 */) {
|
||
|
/* statements */
|
||
|
}
|
||
|
|
||
|
/* 进行下一次迭代 */
|
||
|
|
||
|
/* 进行当前迭代 */
|
||
|
|
||
|
/* 返回当前迭代结果 */
|
||
|
}
|
||
|
```
|
||
|
|
||
|
并不是一定要先进行下一次迭代再进行当前迭代,实际上如果不需要下一次迭代就能完成当前迭代,那么其实也可以先进行当前迭代。
|
||
|
|
||
|
先进行当前迭代和先进行下一次迭代在迭代顺序上也有差别,参考二叉树的前中后序遍历。
|