
二叉树
东风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 · 173 阅读 · 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 · 494 阅读 · 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 · 126 阅读 · 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 · 283 阅读 · 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 · 151 阅读 · 0 评论