二叉树
东风DFsu
这个作者很懒,什么都没留下…
展开
-
二叉树遍历算法的非递归实现
二叉树遍历算法的非递归实现先序遍历中序遍历后序遍历 先序遍历 //先序遍历非递归 void PreOrder(BiTree T){ stack<BiTree> S; BiTree p=T; while(p||!S.empty()){ while(p){ visit(p); S.push(p); p=p->lchild; } if(!S.empt...原创 2018-12-15 18:44:46 · 155 阅读 · 0 评论 -
二叉树的最大/小深度的递归与非递归实现
二叉树结构体定义 //二叉树结构体定义 typedef struct BiTNode{ ElemType data; struct BiTNode* lchild; struct BiTNode* rchild; }BiTNode,*BiTree; 最大深度的递归算法 //最大深度的递归算法 int MaxDepth1(BiTree T){ if(!T) return 0; els...原创 2018-12-15 19:31:29 · 466 阅读 · 0 评论 -
二叉树某些问题的递归算法
合并二叉树 //二叉树结构体定义 typedef struct BiTNode{ ElemType data; struct BiTNode* lchild; struct BiTNode* rchild; }BiTNode,*BiTree; //合并二叉树 BiTree mergeTree(BiTree T1,BiTree T2){ if(!T1) return T2; if(!...原创 2018-12-15 20:59:48 · 108 阅读 · 0 评论 -
层次遍历在求解二叉树算法题时的应用举例
二叉树的宽度 由于需要对队列中的不同结点加以区分,自定义一个数组模拟队列 //二叉树结构体定义 typedef struct BiTNode{ ElemType data; struct BiTNode* lchild; struct BiTNode* rchild; }BiTNode,*BiTree; //二叉树的宽度 int calculateWidth(BiTree T){ if(...原创 2018-12-15 21:33:11 · 253 阅读 · 0 评论 -
构造二叉树(前序+中序&&中序+后序)
#include <string.h> #include <stdlib.h> #include <stdio.h> typedef struct BiTNode { char data; struct BiTNode *left; struct BiTNode *right; }BiTNode,*BiTree; int find(char root_...原创 2019-02-27 18:14:19 · 128 阅读 · 0 评论