- 博客(1)
- 收藏
- 关注
原创 数据结构与算法-二叉树遍历的非递归实现
二叉树有三种递归遍历算法:先序、中序和后序三种遍历算法。递归程序虽简洁,但执行效率不高。下面是二叉树遍历的非递归算法。需要用到栈(特点:后进先出)。思路:以中序遍历(LDR)为例,先设置一个指针p指向当前需要处理的结点,首先指向根结点,同时设置一个保存指针指向的数据的顺序栈,初态为空栈。开始扫描(并非访问)根结点及其作孩子结点(后面简称左结点),若左结点存在,则将该根结点及其所有左结点入栈,当无左结点时,表示栈顶结点无左孩子,然后栈顶结点出栈,并访问它,接着沿该结点的右子树向下遍历。该过程重复,直到
2022-05-18 17:26:34
491
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人