zoukankan
html css js c++ java
二叉树遍历:先序、中序、后序和层次遍历
public
class
BinaryNode
{
public
int
Data;
public
BinaryNode Left;
public
BinaryNode Right;
}
public
class
BinaryTree
{
public
void
PreOrder(BinaryNode node)
{
if
(node
!=
null
)
{
Console.WriteLine(node.Data);
PreOrder(node.Left);
PreOrder(node.Right);
}
}
public
void
MidOrder(BinaryNode node)
{
if
(node
!=
null
)
{
MidOrder(node.Left);
Console.WriteLine(node.Data);
MidOrder(node.Right);
}
}
public
void
AfterOrder(BinaryNode node)
{
if
(node
!=
null
)
{
AfterOrder(node.Left);
AfterOrder(node.Right);
Console.WriteLine(node.Data);
}
}
public
void
LayerOrder(BinaryNode node)
{
if
(node
!=
null
)
{
CurrentLayer(node.Left);
CurrentLayer(node.Right);
LayerOrder(node.Left);
LayerOrder(node.Right);
}
}
private
void
CurrentLayer(BinaryNode node)
{
if
(node
!=
null
)
{
Console.WriteLine(node.Data);
}
}
}
测试:
BinaryNode n1
=
new
BinaryNode();
n1.Data
=
27
;
BinaryNode n2
=
new
BinaryNode();
n2.Data
=
83
;
BinaryNode n3
=
new
BinaryNode();
n3.Data
=
123
;
BinaryNode n4
=
new
BinaryNode();
n4.Data
=
98
;
BinaryNode n5
=
new
BinaryNode();
n5.Data
=
94
;
BinaryNode n6
=
new
BinaryNode();
n6.Data
=
48
;
BinaryNode n7
=
new
BinaryNode();
n7.Data
=
61
;
n1.Left
=
n2;
n1.Right
=
n3;
n1.Left.Left
=
n4;
n1.Left.Right
=
n5;
n1.Right.Right
=
n6;
n1.Right.Right.Left
=
n7;
BinaryTree bTree
=
new
BinaryTree();
Console.WriteLine(
"
Pre Order Binary Tree:
"
);
bTree.PreOrder(n1);
Console.WriteLine(
"
Midd Order Binary Tree:
"
);
bTree.MidOrder(n1);
Console.WriteLine(
"
After Order Binary Tree:
"
);
bTree.AfterOrder(n1);
Console.WriteLine(
"
Layer Order Binary Tree:
"
);
bTree.LayerOrder(n1);
Console.ReadLine();
查看全文
相关阅读:
VMWare安装Solaris虚拟机的网络设置
PeopleTools预警程序制作
listener.ora增加监听端口
用.Net Mage工具更新WPF ClickOnce应用程序部署清单
基本测试方法用例场景
Qt Vs msvc debug版本没有问题但release版本出现异常
Qt 打包release发布问题
Qt 鼠标悬浮按钮上出现浮窗效果
Qt 样式对于QPushbutton 增加 hover press release效果
阿里云ECS无法通过SSL远程链接问题。
原文地址:https://www.cnblogs.com/silva/p/1091806.html
最新文章
cygwin配置个人环境,android模拟器root映象和Babun
Android添加系统级顶层窗口 和 WindowManager添加view的动画问题
Android gdb so
Android调用JNI本地方法跟踪目标代码
Android调用JNI本地方法经过有点改变
Flash制作和软件使用
传统的Java虚拟机和Android的Dalvik虚拟机及其ART模式
CSS盒模型之三角形
终端工具
BAT&注册表重定向劫持
热门文章
使用SpringBoot做Javaweb时,数据交互遇到的问题
idea运行web项目乱码
java读取资源文件
Spring Boot简介
向MySQL数据库插入数据出现乱码的情况分析
Spring Boot安全设计的配置
Spring-data-jpa操作数据库环境配置
心态炸了,我再写一个4.1.0版本的SND实例
基于SDN4.2.4的neo4j实例
spring-data-neo4j 4.2.4release文档概要
Copyright © 2011-2022 走看看