今天重新回顾了深度优先搜索和递归,
突然发现递归过程可以看成是对于程序数的先序遍历,中序遍历和后序遍历
比方说以下例子
def DFS()
print(1) # node itself
DFS() # left tree
DFS() # right tree
以上例子就可以看成先序遍历的二叉树
def DFS()
DFS() # left tree
print(1) # node itself
DFS() # right tree
以上例子就可以看成中序遍历的二叉树
同理还可以有多叉树等等,用这样的思路思考递归运算的程序复杂度就可以参考遍历树的复杂度来求解了