예제 #1
0
        public void PermuteUniqueTest_WithNavigateNumber()
        {
            var input = new int[] { -1, 2, 0, -1, 1, 0, 1 };

            var solution = new _047_Permutations2();
            var result   = solution.PermuteUnique(input);

            Assert.AreEqual(630, result.Count);
        }
예제 #2
0
        public void PermuteUniqueTest_AllSame()
        {
            var input = new int[] { 1, 1 };

            var solution = new _047_Permutations2();
            var result   = solution.PermuteUnique(input);

            Assert.AreEqual(1, result.Count);
        }
예제 #3
0
        public void PermuteUniqueTest_NotOrdered()
        {
            var input = new int[] { 3, 1, 2, 1, 2 };

            var solution = new _047_Permutations2();
            var result   = solution.PermuteUnique(input);

            Assert.AreEqual(30, result.Count);
        }
예제 #4
0
        public void PermuteUniqueTest_OneItem()
        {
            var input = new int[] { 1 };

            var solution = new _047_Permutations2();
            var result = solution.PermuteUnique(input);

            Assert.AreEqual(1, result.Count);
        }
예제 #5
0
        public void PermuteUniqueTest_NotOrdered()
        {
            var input = new int[] { 3, 1, 2, 1, 2 };

            var solution = new _047_Permutations2();
            var result = solution.PermuteUnique(input);

            Assert.AreEqual(30, result.Count);
        }
예제 #6
0
        public void PermuteUniqueTest()
        {
            var input = new int[] { 1, 1, 2 };

            var solution = new _047_Permutations2();
            var result = solution.PermuteUnique(input);

            Assert.AreEqual(3, result.Count);
            AssertHelper.AssertList(new List<IList<int>>()
            {
                new List<int> { 1, 1, 2 },
                new List<int> { 2, 1, 1 },
                new List<int> { 1, 2, 1 }
            }, result);
        }
예제 #7
0
        public void PermuteUniqueTest()
        {
            var input = new int[] { 1, 1, 2 };

            var solution = new _047_Permutations2();
            var result   = solution.PermuteUnique(input);

            Assert.AreEqual(3, result.Count);
            AssertHelper.AssertList(new List <IList <int> >()
            {
                new List <int> {
                    1, 1, 2
                },
                new List <int> {
                    2, 1, 1
                },
                new List <int> {
                    1, 2, 1
                }
            }, result);
        }
예제 #8
0
        public void PermuteUniqueTest_WithNavigateNumber()
        {
            var input = new int[] { -1, 2, 0, -1, 1, 0, 1 };

            var solution = new _047_Permutations2();
            var result = solution.PermuteUnique(input);

            Assert.AreEqual(630, result.Count);
        }