Exemple #1
0
        private AVLTreeNode <T> Find(T value)
        {
            AVLTreeNode <T> current = Head; // помещаем текущий элемент в корень дерева

            // пока текущиу узел пустой
            while (current != null)
            {
                int result = current.CompareTo(value);

                if (result > 0)
                {
                    // если знчение меньше текущего,то переход влево
                    current = current.Left;
                }
                else if (result < 0)
                {
                    current = current.Right;
                }
                else
                {
                    break;
                }
            }
            return(current);
        }