Esempio n. 1
0
        public void Given_an_list_when_swap_then_should_swaped_in_pairs()
        {
            var head      = InitNodeHead();
            var swapNodes = new SwapNodes();
            var result    = swapNodes.SwapNodesInPairs(head);

            Assert.Equal(2, result.Val);
            Assert.Equal(1, result.Next.Val);
            Assert.Equal(4, result.Next.Next.Val);
            Assert.Equal(3, result.Next.Next.Next.Val);
        }
Esempio n. 2
0
        public void swapNodesTest0()
        {
            /*
             *  3
             *  2 3
             *  -1 -1
             *  -1 -1
             *  2
             *  1
             *  1
             */
            string[] input = new string[] { "3", "2 3", "-1 -1", "-1 -1", "2", "1", "1" };

            int n = Convert.ToInt32(input[0]);

            int[][] indexes = new int[n][];

            for (int indexesRowItr = 0; indexesRowItr < n; indexesRowItr++)
            {
                indexes[indexesRowItr] = Array.ConvertAll(input[indexesRowItr + 1].Split(' '), indexesTemp => Convert.ToInt32(indexesTemp));
            }

            int queriesCount = Convert.ToInt32(input[n + 1]);

            int[] queries = new int[queriesCount];

            for (int queriesItr = 0; queriesItr < queriesCount; queriesItr++)
            {
                int queriesItem = Convert.ToInt32(input[queriesItr + n + 2]);
                queries[queriesItr] = queriesItem;
            }

            int[][] result = SwapNodes.swapNodes(indexes, queries);

            /*
             * 3 1 2
             * 2 1 3
             */
            Assert.AreEqual("3 1 2", string.Join(" ", result[0]));
            Assert.AreEqual("2 1 3", string.Join(" ", result[1]));
        }