Beispiel #1
0
        public static void Test()
        {
            UnionFind uf = new UnionFind(10);

            Console.WriteLine("uf.count() is 10: {0}", uf.Count());
            uf.Union(0, 1);
            uf.Union(3, 2);
            Console.WriteLine("uf.count() is 8: {0}", uf.Count());
            Console.WriteLine("uf.connected(0, 1) is true: {0}", uf.Connected(0, 1));
            Console.WriteLine("uf.connected(1, 2) is false: {0}", uf.Connected(1, 2));
            uf.Union(4, 0);
            Console.WriteLine("uf.count() is 7: {0}", uf.Count());
            Console.WriteLine("uf.connected(4, 0) is true: {0}", uf.Connected(4, 0));
            Console.WriteLine("uf.connected(4, 1) is true: {0}", uf.Connected(4, 1));
            uf.Union(5, 6);
            uf.Union(7, 8);
            uf.Union(6, 7);
            uf.Union(2, 5);
            Console.WriteLine("uf.count() is 3: {0}", uf.Count());
            Console.WriteLine("uf.connected(3, 8) is true: {0}", uf.Connected(3, 8));
            Console.WriteLine("uf.connected(3, 0) is false: {0}", uf.Connected(3, 0));
            uf.Union(0, 8);
            Console.WriteLine("uf.count() is 2: {0}", uf.Count());
            Console.WriteLine("uf.connected(3, 0) is true: {0}", uf.Connected(3, 0));
            Console.WriteLine("uf.connected(0, 9) is false: {0}", uf.Connected(0, 9));
            Console.WriteLine("uf.find(0) is 8: {0}", uf.Find(0));
            Console.WriteLine("uf.find(1) is 8: {0}", uf.Find(1));
            Console.WriteLine("uf.find(2) is 8: {0}", uf.Find(2));
            Console.WriteLine("uf.find(3) is 8: {0}", uf.Find(3));
            Console.WriteLine("uf.find(9) is 9: {0}", uf.Find(9));
        }
Beispiel #2
0
 public static void Test()
 {
     UnionFind uf = new UnionFind(10);
     Console.WriteLine("uf.count() is 10: {0}", uf.Count());
     uf.Union(0, 1);
     uf.Union(3, 2);
     Console.WriteLine("uf.count() is 8: {0}", uf.Count());
     Console.WriteLine("uf.connected(0, 1) is true: {0}", uf.Connected(0, 1));
     Console.WriteLine("uf.connected(1, 2) is false: {0}", uf.Connected(1, 2));
     uf.Union(4, 0);
     Console.WriteLine("uf.count() is 7: {0}", uf.Count());
     Console.WriteLine("uf.connected(4, 0) is true: {0}", uf.Connected(4, 0));
     Console.WriteLine("uf.connected(4, 1) is true: {0}", uf.Connected(4, 1));
     uf.Union(5, 6);
     uf.Union(7, 8);
     uf.Union(6, 7);
     uf.Union(2, 5);
     Console.WriteLine("uf.count() is 3: {0}", uf.Count());
     Console.WriteLine("uf.connected(3, 8) is true: {0}", uf.Connected(3, 8));
     Console.WriteLine("uf.connected(3, 0) is false: {0}", uf.Connected(3, 0));
     uf.Union(0, 8);
     Console.WriteLine("uf.count() is 2: {0}", uf.Count());
     Console.WriteLine("uf.connected(3, 0) is true: {0}", uf.Connected(3, 0));
     Console.WriteLine("uf.connected(0, 9) is false: {0}", uf.Connected(0, 9));
     Console.WriteLine("uf.find(0) is 8: {0}", uf.Find(0));
     Console.WriteLine("uf.find(1) is 8: {0}", uf.Find(1));
     Console.WriteLine("uf.find(2) is 8: {0}", uf.Find(2));
     Console.WriteLine("uf.find(3) is 8: {0}", uf.Find(3));
     Console.WriteLine("uf.find(9) is 9: {0}", uf.Find(9));
 }
Beispiel #3
0
 static void Main(string[] args)
 {
     UnionFind.test();
 }