示例#1
0
        private static BalancedNode <T> traverseRight(BalancedNode <T> n)
        {
            if (n.getRightBuddy() != null)
            {
                return(traverseRight(n.getRightBuddy()));
            }

            return(n);
        }
示例#2
0
        public void popRight()
        {
            BalancedNode <T> leftestNode = getLeftestNode();

            leftestNode.getRightBuddy().setLeftBuddy(null);

            detachNode(leftestNode);
            addRightNode(leftestNode);

            setRootNode(rootNode.getRightBuddy());
        }
示例#3
0
        public int size()
        {
            var size = 0;
            BalancedNode <T> node = getLeftestNode();

            while (node != null)
            {
                size += 1;
                node  = node.getRightBuddy();
            }

            return(size);
        }