摘要: //非递归后序遍历 void PostOrder(TreeNode *root) { stack S; do { while (root) { if (root->rc) S.push(root->rc); S.push(root); root = root->lc; } root = S.pop( 阅读全文
posted @ 2020-05-26 21:39 Royzzzzz 阅读(149) 评论(0) 推荐(0) 编辑
摘要: //非递归中序遍历 //设置一个函数,该函数的作用是深入到最左侧子树但是不遍历 void inOrder_Ii(TreeNode *bt,stack S) { while (bt) { S.push(bt); if(bt->lc) bt = bt->lc; } } void inOrder_I(Tr 阅读全文
posted @ 2020-05-26 21:31 Royzzzzz 阅读(180) 评论(0) 推荐(0) 编辑
摘要: //非递归前序遍历 //设置一个函数,该函数的作用是深入左子树同时遍历,用栈保存右子树 void preOreder_Ii(TreeNode *bt, stack S) { while (bt) { Visit(bt); if(bt->rc) S.push(bt->rc); bt = bt->lc; 阅读全文
posted @ 2020-05-26 21:22 Royzzzzz 阅读(196) 评论(0) 推荐(0) 编辑