在循环中使用递归 - 糟糕的风格?

use*_*710 -3 java recursion styles loops

简单的问题,我只是想知道在循环中递归调用方法是否被认为是糟糕的风格.我知道人们因为时间和空间的成本而存在递归问题,所以我认为循环和重复会被认为更加低效和昂贵.

Ric*_*uen 6

不是真的 - 有时您必须,例如在递归爬行树数据结构时:

public void crawl(TreeNode node) {
    TreeNode[] children = node.getChildren();
    for(TreeNode child:children) {
        crawl(child);
    }
}
Run Code Online (Sandbox Code Playgroud)