最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
用C#实现数据结构--树(一)
时间:2022-07-02 11:09:52 编辑:袖梨 来源:一聚教程网
数据结构与算法(C#实现)系列---树(一)
Heavenkiller(原创)
首先我们给树下一个定义:
树是一个有限的、非空的结点集,
T={r} or T1 or T2 or…or Tn
它具有下列性质:
1.集合指定的结点r叫做树的根结点
2.其余的结点可以划分成n个子集,T1,T2,…Tn(n>=0),其中每一个子集都是一棵树。
树的其它定义如度,叶子,高等就请大家查阅别的资料吧,到处都有的。
树的主要性质一个就是遍历,分为深度遍历和广度遍历
在这里分别实现为DepthFirstTravesal()和WidthFirstTravesal()
其中深度遍历又分为前序遍历、中序遍历、和后序遍历
这是是采用适配器技术实现的。
using System;
using System.Collections;
namespace DataStructure
{
///
/// Tree 的摘要说明。
/// when traverse, traversaltype can't be changed,or throw a exception
/// 支持枚举、比较、深度复制
///
public abstract class Tree:IEnumerable,IComparable
{
public Tree()
{
//
// TODO: 在此处添加构造函数逻辑
//
Heavenkiller(原创)
首先我们给树下一个定义:
树是一个有限的、非空的结点集,
T={r} or T1 or T2 or…or Tn
它具有下列性质:
1.集合指定的结点r叫做树的根结点
2.其余的结点可以划分成n个子集,T1,T2,…Tn(n>=0),其中每一个子集都是一棵树。
树的其它定义如度,叶子,高等就请大家查阅别的资料吧,到处都有的。
树的主要性质一个就是遍历,分为深度遍历和广度遍历
在这里分别实现为DepthFirstTravesal()和WidthFirstTravesal()
其中深度遍历又分为前序遍历、中序遍历、和后序遍历
这是是采用适配器技术实现的。
using System;
using System.Collections;
namespace DataStructure
{
///
/// Tree 的摘要说明。
/// when traverse, traversaltype can't be changed,or throw a exception
/// 支持枚举、比较、深度复制
///
public abstract class Tree:IEnumerable,IComparable
{
public Tree()
{
//
// TODO: 在此处添加构造函数逻辑
//
相关文章
- 《潜行者2:切尔诺贝利之心》借刀杀人成就攻略分享 11-21
- 《潜行者2:切尔诺贝利之心》游戏保存方法介绍 11-21
- 《潜行者2:切尔诺贝利之心》游戏支线任务作用介绍 11-21
- 《潜行者2:切尔诺贝利之心》异常现象特点介绍 11-21
- 《潜行者2:切尔诺贝利之心》随机事件避免原因介绍 11-21
- 《潜行者2:切尔诺贝利之心》随机事件应对方法推荐 11-21