SortedSet<T>.UnionWith(IEnumerable<T>) मेथड वर्तमान सेट को संशोधित करता है ताकि इसमें वर्तमान सेट और निर्दिष्ट संग्रह दोनों में मौजूद सभी तत्व शामिल हों। डुप्लिकेट स्वचालित रूप से हटा दिए जाते हैं। परिणाम क्रमबद्ध रहता है।
उदाहरण 1: आंशिक ओवरलैप
using System;
using System.Collections.Generic;
public class Demo
{
public static void Main()
{
SortedSet<int> set1 = new SortedSet<int>();
set1.Add(50);
set1.Add(100);
set1.Add(150);
Console.WriteLine("SortedSet1 elements...");
foreach (int ele in set1)
{
Console.WriteLine(ele);
}
SortedSet<int> set2 = new SortedSet<int>();
set2.Add(100);
set2.Add(150);
set2.Add(200);
set2.Add(250);
Console.WriteLine("SortedSet2 elements...");
foreach (int ele in set2)
{
Console.WriteLine(ele);
}
Console.WriteLine("Union...");
set1.UnionWith(set2);
foreach (int ele in set1)
{
Console.WriteLine(ele);
}
}
}
आउटपुट
SortedSet1 elements... 50 100 150 SortedSet2 elements... 100 150 200 250 Union... 50 100 150 200 250
उदाहरण 2: समान सेट
using System;
using System.Collections.Generic;
public class Demo
{
public static void Main()
{
SortedSet<int> set1 = new SortedSet<int>();
set1.Add(100);
set1.Add(200);
set1.Add(300);
set1.Add(400);
set1.Add(500);
set1.Add(600);
Console.WriteLine("SortedSet1 elements...");
foreach (int ele in set1)
{
Console.WriteLine(ele);
}
SortedSet<int> set2 = new SortedSet<int>();
set2.Add(100);
set2.Add(200);
set2.Add(300);
set2.Add(400);
set2.Add(500);
set2.Add(600);
Console.WriteLine("SortedSet2 elements...");
foreach (int ele in set2)
{
Console.WriteLine(ele);
}
Console.WriteLine("Union...");
set1.UnionWith(set2);
foreach (int ele in set1)
{
Console.WriteLine(ele);
}
}
}
आउटपुट
SortedSet1 elements... 100 200 300 400 500 600 SortedSet2 elements... 100 200 300 400 500 600 Union... 100 200 300 400 500 600
UnionWith वर्तमान सेट को संशोधित करता है (in-place)। यह O(n + m) समय में काम करता है जहां n और m सेट आकार हैं। सेट क्रमबद्ध क्रम बनाए रखता है। किसी भी IEnumerable<T> के साथ काम करता है, केवल SortedSet के साथ नहीं।