
刷题day12 二叉树的理论基础、递归遍历、迭代遍历、统一迭代
比如说中序的时候,他是先处理的时候将根节点放进栈中,之后判断栈不为空就开始循环,给他再弹出去然后按照正常的放入栈中的顺序去放,就比如说中序放入栈中就是右中左的顺序,然后每次都得在中节点后加一个null进行标记,其他就是正常一样的。分析一下为什么刚刚写的前序遍历的代码,不能和中序遍历通用呢,因为前序遍历的顺序是中左右,先访问的元素是中间节点,要处理的元素也是中间节点,所以刚刚才能写出相对简洁的代码,前序遍历是中左右,每次先处理的是中间节点,那么先将根节点放入栈中,然后将右孩子加入栈,再加入左孩子。
























