📄 tree.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
namespace BinaryTree
{
public class Tree<T> where T : IComparable<T>
{
private T data;
private Tree<T> left;
private Tree<T> right;
public Tree(T nodeValue)
{
this.data = nodeValue;
this.left = null;
this.right = null;
}
public T NodeData
{
get { return this.data; }
set { this.data = value; }
}
public Tree<T> LeftTree
{
get { return this.left; }
set { this.left = value; }
}
public Tree<T> RightTree
{
get { return this.right; }
set { this.right = value; }
}
public void Insert(T newItem)
{
T currentNodeValue = this.NodeData;
if (currentNodeValue.CompareTo(newItem) > 0)
{
if (this.LeftTree == null)
{
this.LeftTree = new Tree<T>(newItem);
}
else
{
this.LeftTree.Insert(newItem);
}
}
else
{
if (this.RightTree == null)
{
this.RightTree = new Tree<T>(newItem);
}
else
{
this.RightTree.Insert(newItem);
}
}
}
public void WalkTree()
{
if (this.LeftTree != null)
{
this.LeftTree.WalkTree();
}
Console.WriteLine(this.NodeData.ToString());
if (this.RightTree != null)
{
this.RightTree.WalkTree();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -