Recursion tips

public void helper() {

    //terminator
    if (xxxx) {  
        return 
    }
    
    // process
    do something
    
    // drill down, go to next level
    helper(level + 1....)
    
    // reverse state( 有時需要, like backtracking)
}

Example: 94. Binary Tree Inorder Traversal

left root right (2個方向的遞歸)

Example: 589. N-ary Tree Preorder Traversal

Backtracking

Last updated

Was this helpful?