Пример #1
0
        public void TestThreeSum()
        {
            ThreeSumProblem ts  = new ThreeSumProblem();
            var             res = ts.ThreeSum(new int[] { -4, -2, -2, -2, 0, 1, 2, 2, 2, 3, 3, 4, 4, 6, 6 });

            res = ts.ThreeSum(new int[] { -4, -2, 1, -5, -4, -4, 4, -2, 0, 4, 0, -2, 3, 1, -5, 0 });
        }
Пример #2
0
        public void ThreeSum_Case1()
        {
            // Arrange
            var obj = new ThreeSumProblem();

            int[] nums     = new int[] { -1, 0, 1, 2, -1, -4 };
            var   expected = new List <IList <int> >()
            {
                new List <int>()
                {
                    -1, -1, 2
                },
                new List <int>()
                {
                    -1, 0, 1
                },
            };

            // Act
            var actual = obj.ThreeSum(nums);

            // Assert
            Assert.Equal(expected, actual);
            //Assert.Equal(expected.ToExpectedObject(), actual.ToExpectedObject());
        }
Пример #3
0
        public void ThreeSum_Case5()
        {
            // Arrange
            var obj = new ThreeSumProblem();

            int[] nums     = new int[] { -1, 0, 1, 2, -1, -4, -2, -3, 3, 0, 4 };
            var   expected = new List <IList <int> >()
            {
                new List <int>()
                {
                    -4, 0, 4
                },
                new List <int>()
                {
                    -4, 1, 3
                },
                new List <int>()
                {
                    -3, -1, 4
                },
                new List <int>()
                {
                    -3, 0, 3
                },
                new List <int>()
                {
                    -3, 1, 2
                },
                new List <int>()
                {
                    -2, -1, 3
                },
                new List <int>()
                {
                    -2, 0, 2
                },
                new List <int>()
                {
                    -1, -1, 2
                },
                new List <int>()
                {
                    -1, 0, 1
                },
            };

            // Act
            var actual = obj.ThreeSum(nums);

            // Assert
            Assert.Equal(expected, actual);
        }
Пример #4
0
        public void ThreeSum_Case3()
        {
            // Arrange
            var obj = new ThreeSumProblem();

            int[] nums     = new int[] { 0 };
            var   expected = new List <IList <int> >();

            // Act
            var actual = obj.ThreeSum(nums);

            // Assert
            Assert.Equal(expected, actual);
        }
Пример #5
0
        public void ThreeSumProblemTest()
        {
            var solution = new ThreeSumProblem();

            Assert.Equal(new List <IList <int> > {
                new List <int>()
                {
                    -1, -1, 2
                }, new List <int>()
                {
                    -1, 0, 1
                }
            },
                         solution.ThreeSum(new int[] { -1, 0, 1, 2, -1, -4 }));
        }