二叉搜索树插入算法C#演示

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

二叉搜索树插入算法C#演示

public class BinaryTreeNode
{
    public BinaryTreeNode Left { get; set; }
 
    public BinaryTreeNode Right { get; set; }
 
    public int Data { get; set; }
 
    public BinaryTreeNode(int data)
    {
        this.Data = data;
    }
}
 
 public void InsertIntoBST(BinaryTreeNode root, int data)
    {
        BinaryTreeNode _newNode = new BinaryTreeNode(data);
 
        BinaryTreeNode _current = root;
        BinaryTreeNode _previous = _current;
 
        while (_current != null)
        {
            if (data < _current.Data)
            {
                _previous = _current;
                _current = _current.Left;
            }
            else if (data > _current.Data)
            {
                _previous = _current;
                _current = _current.Right;
            }
        }
 
        if (data < _previous.Data)
            _previous.Left = _newNode;
        else
            _previous.Right = _newNode;
    }