示例#1
0
        public void MakeHeapTest()
        {
            int[] array = new int[] { 11, 5, 33, 65, 10, 653, 14, 3, 16, 5, 4 };
            BinaryHeapHelper.MakeHeap(array, 11);
            if (array[0] != 3 || array[1] != 4 || array[2] != 14 ||
                array[3] != 5 || array[4] != 5 || array[5] != 653 || array[6] != 33 ||
                array[7] != 65 || array[8] != 16 || array[9] != 11 || array[10] != 10)
            {
                Assert.Fail();
            }

            array = new int[] { 11 };
            BinaryHeapHelper.MakeHeap(array, 1);
            if (array[0] != 11)
            {
                Assert.Fail();
            }

            array = new int[] { 12, 11, 2 };
            BinaryHeapHelper.MakeHeap(array, 3);
            if (array[0] != 2 || array[1] != 11 || array[2] != 12)
            {
                Assert.Fail();
            }

            array = new int[] { 12, 13 };
            BinaryHeapHelper.MakeHeap(array, 2);
            if (array[0] != 12 || array[1] != 13)
            {
                Assert.Fail();
            }

            array = new int[] { 12, 11, 16 };
            BinaryHeapHelper.MakeHeap(array, 3);
            if (array[0] != 11 || array[1] != 12 || array[2] != 16)
            {
                Assert.Fail();
            }
        }