Example #1
0
        private void RunTwo(MinXorUseTrie minXor)
        {
            Console.WriteLine("Elements of Two =====================");
            int[] values;
            int   min;

            values = new int[] { 3, 10, 5, 25, 2, 8 };
            min    = minXor.FindTwo(values);
            Console.WriteLine($"The min xor of {string.Join(",", values)} is {min}");

            values = new int[] { 3, 10, 5, 25 };
            min    = minXor.FindTwo(values);
            Console.WriteLine($"The min xor of {string.Join(",", values)} is {min}");

            values = new int[] { 3, 10, 5 + 16, 25 };
            min    = minXor.FindTwo(values);
            Console.WriteLine($"The min xor of {string.Join(",", values)} is {min}");

            values = new int[] { 16 + 3, 16 + 10, 16 + 5, 25 };
            min    = minXor.FindTwo(values);
            Console.WriteLine($"The min xor of {string.Join(",", values)} is {min}");

            values = new int[] { 10, 2, 8 };
            min    = minXor.FindTwo(values);
            Console.WriteLine($"The min xor of {string.Join(",", values)} is {min}");
        }
Example #2
0
        public void Run()
        {
            Console.WriteLine("Trie =====================");
            MinXorUseTrie minXor = new MinXorUseTrie();

            RunTwo(minXor);
            // RunAnyOfArray(minXor);
        }
Example #3
0
        private void RunAnyOfArray(MinXorUseTrie minXor)
        {
            // Console.WriteLine("Elements of Array =====================");
            // int[] values;
            // int maxWithTrie;
            // values = new int[] { 1, 2, 3, 4 };
            // maxWithTrie = minXor.FindAnyOfArray(values);
            // Console.WriteLine($"The max xor of {string.Join(",", values)} is {maxWithTrie}");

            // values = new int[] { 8, 1, 2, 12, 7, 6 };
            // maxWithTrie = minXor.FindAnyOfArray(values);
            // Console.WriteLine($"The max xor of {string.Join(",", values)} is {maxWithTrie}");

            // values = new int[] { 4, 6 };
            // maxWithTrie = minXor.FindAnyOfArray(values);
            // Console.WriteLine($"The max xor of {string.Join(",", values)} is {maxWithTrie}");

            // values = new int[] { 9, 7, 4, 3 };
            // maxWithTrie = minXor.FindAnyOfArray(values);
            // Console.WriteLine($"The max xor of {string.Join(",", values)} is {maxWithTrie}");
        }