二叉树
每个节点最多拥有不超过两个子节点的树定义为二叉树。由于限制子节点的数量为 2,人们
可以为插入数据、删除数据、以及在二叉树中查找数据编写有效的程序。
一个父节点的两个子节点分别被称为左节点和右节点,对于某些二叉树的实现而言,一些数
据值只能存储在左节点内,而其它数据值则存储在右节点内。
二叉树是一种较小数据值存储在左节点内而较大数据存储在右节点内的二叉树。
一、构造二叉树
public class Node
{
public int Data;
public Node Left;
public Node Right;
/// <summary>
/// 允许显示存储在节点内的数据
/// </summary>
public void DisplayNode()
{
Console.Write(Data);
}
}
/// <summary>
/// BinarySearchTree(BST)类。这个类只由一个数据成员构成,即一个表示BST根结点
的Node对象
/// </summary>
public class BinarySearchTree
{
public Node root;//树节点
/// <summary>
/// 默认构造器方法把根结点设置为空(null),同时创建一个空节点。
/// </summary>
public BinarySearchTree()
{
root = null;
}
/// <summary>
/// Insert方法向树内添加新的节点
/// </summary>
/// <param name="i"></param>
public void Insert(int i)
{
/*创建一个Node对象,
* 并把唯一的参数i传递给新的Node对象的Data属性。*/