创建二叉树Word下载.docx

上传人:b****6 文档编号:17370127 上传时间:2022-12-01 格式:DOCX 页数:7 大小:64.50KB
下载 相关 举报
创建二叉树Word下载.docx_第1页
第1页 / 共7页
创建二叉树Word下载.docx_第2页
第2页 / 共7页
创建二叉树Word下载.docx_第3页
第3页 / 共7页
创建二叉树Word下载.docx_第4页
第4页 / 共7页
创建二叉树Word下载.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

创建二叉树Word下载.docx

《创建二叉树Word下载.docx》由会员分享,可在线阅读,更多相关《创建二叉树Word下载.docx(7页珍藏版)》请在冰豆网上搜索。

创建二叉树Word下载.docx

{

intdata;

struct_Node*left;

struct_Node*right;

_Node()

{

data=0;

left=NULL;

right=NULL;

}

}Node,*_PNode;

//***************************************层次遍历的举例********************************************begin

//创建二叉树利用先序创建

/*

/\

3

/\/

56

/\\/\

891011

13

*/

voidCreateBitree(_PNode&

pNode,fstream&

fin)

intdat;

fin>

>

dat;

if(dat==0)

pNode=NULL;

else

pNode=newNode();

pNode->

data=dat;

CreateBitree(pNode->

left,fin);

right,fin);

}

//二叉树的自下而上,自右向左的遍历方法

voidReverseLevel(_PNodepRoot)

queue<

_PNode>

q;

stack<

s;

_PNodeq[100]={0};

_PNodepNode=NULL;

intfront=0;

intrear=0;

intlast=0;

intwidth=0;

inttemp=0;

if(NULL==pRoot)

returnwidth;

q[rear]=pRoot;

while(front<

=last)

pNode=q[front++];

temp++;

if(NULL!

=pNode->

left)

q[++rear]=pNode->

left;

right)

right;

if(front>

last)

last=rear;

if(temp>

width)

width=temp;

temp=0;

//***************************************层次遍历的举例********************************************end

//辅助函数,设置控制台的颜色

voidSetConsoleTextColor(WORDdwColor)

HANDLEhandle=GetStdHandle(STD_OUTPUT_HANDLE);

if(INVALID_HANDLE_VALUE==handle)

return;

SetConsoleTextAttribute(handle,dwColor);

int_tmain(intargc,_TCHAR*argv[])

_PNodepRoot1=NULL;

SetConsoleTextColor(FOREGROUND_GREEN|FOREGROUND_INTENSITY);

fstreamfin("

level.txt"

);

CreateBitree(pRoot1,fin);

cout<

<

endl<

"

******************层次遍历举例********************"

endl;

二叉树的自下而上,自右向左的遍历"

ReverseLevel(pRoot1);

二叉树中度为1的节点个数:

CountOneDepth(pRoot1)<

二叉树中最大的宽度为:

FindMaxWidth(pRoot1)<

return0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 法学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1