c++语言使用迭代法实现二叉树前序遍历
1、在访问右子树时,需要记录右子树的父节点。定义一个堆栈结构保存已访问节点。
2、以根节点为起点,首先访问其左子树,并将已访问节点添加到堆栈。
3、判断堆栈中节点是否有右子树,如果有右子树,则按照上面的逻辑,继续访问右子树。
4、循环结束条件为:堆栈为空。算法逻辑就在于:当遍历子树节点时就放到堆栈中保存,然后再从堆栈中获取节点,继续访问其右子树。完整算法实现如下:
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:55
阅读量:95
阅读量:66
阅读量:60
阅读量:75