示例#1
0
        public void TestDelete()
        {
            var tree = new CompactAvlTree <int>();

            for (int i = 1; i <= 100; i++)
            {
                tree.Add(i);
            }
            Assert.False(tree.Remove(1000));
            for (int i = 1; i <= 100; i++)
            {
                Assert.True(tree.Remove(i));
            }
        }
示例#2
0
        public void DeleteBalanceTest()
        {
            var tree = new CompactAvlTree <int>();

            for (int i = 1; i <= 100; i++)
            {
                tree.Add(i);
            }
            for (int i = 1; i <= 100; i++)
            {
                tree.Remove(i);
                CheckBalance(tree);
            }
        }
        public int TestCompactAvlTree()
        {
            var count = 0;

            for (int i = 0; i < _data.Length; i++)
            {
                var number = _data[i];
                if (_compactTree.Remove(number))
                {
                    ++count;
                }
            }
            if (count != Count)
            {
                throw new Exception($"Remove error in CompactAvlTree. Expected count={Count}, actual count={count}");
            }
            return(count);
        }