using System; using System.Collections.Generic; using System.Text; namespace EmilStefanov { class Sample { static void Main(string[] args) { DisjointSets sets = new DisjointSets(10); PrintElementSets(sets); sets.Union(sets.FindSet(5), sets.FindSet(3)); PrintElementSets(sets); sets.Union(sets.FindSet(1), sets.FindSet(3)); PrintElementSets(sets); sets.Union(sets.FindSet(6), sets.FindSet(7)); PrintElementSets(sets); sets.Union(sets.FindSet(8), sets.FindSet(9)); PrintElementSets(sets); sets.Union(sets.FindSet(6), sets.FindSet(9)); PrintElementSets(sets); sets.AddElements(3); PrintElementSets(sets); sets.Union(sets.FindSet(11), sets.FindSet(12)); PrintElementSets(sets); sets.Union(sets.FindSet(9), sets.FindSet(10)); PrintElementSets(sets); sets.Union(sets.FindSet(7), sets.FindSet(11)); PrintElementSets(sets); Console.ReadKey(); } static void PrintElementSets(DisjointSets sets) { for(int i = 0; i < sets.ElementCount; ++i) Console.Write(sets.FindSet(i).ToString() + " "); Console.WriteLine(); } } }