Beispiel #1
0
        public void SiftDownTest()
        {
            int[] array = new int[] { 11, 5, 33, 65, 10, 653, 14, 3, 16, 5, 4 };
            BinaryHeapHelper.SiftDown(1, array, 11);
            if (array[1] != 5)
            {
                Assert.Fail();
            }
            BinaryHeapHelper.SiftDown(2, array, 11);
            if (array[2] != 14 || array[6] != 33)
            {
                Assert.Fail();
            }
            BinaryHeapHelper.SiftDown(0, array, 11);
            if (array[0] != 5 || array[1] != 10 || array[4] != 4 || array[10] != 11)
            {
                Assert.Fail();
            }

            array = new int[] { 11, 5, 33, 65, 10, 653, 14, 3, 16, 5, 4, 1, 1, 1 };
            BinaryHeapHelper.SiftDown(2, array, 11);
            if (array[2] != 14 || array[6] != 33)
            {
                Assert.Fail();
            }
        }