知识大全 数据结构与算法(C#)系列-二叉树

Posted

篇首语:树木在森林中相依偎而生长, 星辰在银河中因辉映而璀璨。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构与算法(C#)系列-二叉树相关的知识,希望对你有一定的参考价值。

数据结构与算法(C#)系列-二叉树  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  using System;

  using System Collections;

    

  namespace DataStructure

  

  /// <summary>

  /// BinaryTree 的摘要说明

  /// </summary>

  public class BinaryTree:NaryTree

  

  //构造二叉空树

  public BinaryTree():base( )

  

  //

  // TODO: 在此处添加构造函数逻辑

  //

  

  public BinaryTree(object _obj):base( _obj)

  

  //

  protected override object GetEmptyInstance(uint _degree)

      return new BinaryTree(_degree);

  //

  //重写深度遍历

  public override void DepthFirstTraversal(IPrePostVisitor _vis)

  

  if ( !IsEmpty() )

  

  _vis PreVisit(this Key);

  this[ ] DepthFirstTraversal(_vis);

  _vis Visit(this Key);

  this[ ] DepthFirstTraversal(_vis);

  _vis PostVisit(this Key);

  

  

  

  

    

  

  //二叉树大小的比较

  //先比较关键字 如果相等 再比较左子树 如果再相等 则比较右子树 如此递归

  #region IComparable 成员

    

  public override int CompareTo(object obj)

  

  // TODO:  添加 BinaryTree CompareTo 实现

  //因为Comare()中已经进行了类型断定 故不会出现转型错误

  BinaryTree tmpTree=(BinaryTree)obj;

  

  if( this IsEmpty() )

  return tmpTree IsEmpty()? : ;

  if( tmpTree IsEmpty() )

  return ;

    

  int result=Comparer Default Compare(this tmpTree);

  if(result== )

  result=this[ ] CompareTo(tmpTree[ ]);

  if(result== )

  result=this[ ] CompareTo(tmpTree[ ]);

    

  

  return result;

  

    

  #endregion

  

cha138/Article/program/net/201311/12790

相关参考

知识大全 数据结构与算法设计自学考试大纲[4]

第六章二叉树和树  本章介绍了树和森林的定义特别介绍了二叉树的定义`二叉树的性质`二叉树的存储结构及二叉树基本操作的实现对二叉树的周游算法作了详细描述森林与二叉树之间的转换为树提供了一种自然的存储结构

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (三)[23]

  .如下的算法分别是后序线索二叉树求给定结点node的前驱结点与后继结点的算法请在算法空格处填上正确的语句设线索二叉树的结点数据结构为(lflagleftdatarightrflag)其中lflag

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (五)[14]

  .试写出复制一棵二叉树的算法二叉树采用标准链接结构【山东大学二(分)】  类似本题的另外叙述有  ()已知二叉树T试写出复制该二叉树的算法(t→T)  ()(分)递归算法()(分)非递归算法【北方

知识大全 数据结构 6.5 复制二叉树算法演示

  希赛教育计算机专业考研专业课辅导招生  希赛教育计算机专业考研专业课辅导视频  希赛教育计算机考研专业课在线测试系统  BiTNode*CopyTree(BiTNode*T)    //已知二叉树

知识大全 c#二叉树遍历vs2008实现

  下面简单介绍一下几种算法和思路  先序遍历  访问根结点  按先序遍历左子树;  按先序遍历右子树;  例如遍历已知二叉树结果为A>B>D>G>H>C>E>

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (五)[1]

  第六章树和二叉树  五算法设计题  .假设一个仅包含二元运算符的算术表达式以链表形式存储在二叉树BT中写出计算该算术表达式值的算法【东北大学三(分)】  .给出算法将二叉树表示的表达式二叉树按中缀

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (五)[15]

  .请设计一个算法要求该算法把二叉树的叶子结点按从左到右的顺序连成一个单链表表头指针为head二叉树按二叉链表方式存储链接时用叶子结点的右指针域来存放单链表指针分析你的算法的时空复杂度【华南师范大学

知识大全 数据结构 6.7 建表达式的二叉树算法演示

  希赛教育计算机专业考研专业课辅导招生  希赛教育计算机专业考研专业课辅导视频  希赛教育计算机考研专业课在线测试系统  BiTreeCrtExptree(char*exp)    //建立由合法的

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (五)[18]

  .编写递归算法依据树的双亲表示法及其根结点创建树的孩子-兄弟链表存储结构要求写算法以前先写出这两种存储结构的类型说明【清华大学六(分)】  .已知二叉树以二叉链表存储编写算法完成对于树中每一个元素

知识大全 数据结构考研分类复习真题 第六章 树和二叉树 (五)[6]

  .设一棵二叉树的结点结构为(LLINKINFORLINK)ROOT为指向该二叉树根结点的指针p和q分别为指向该二叉树中任意两个结点的指针试编写一算法ANCESTOR(ROOTpqr)该算法找到p和