Check if a SortedSet object is a proper superset of the specified collection in C#

To check if a SortedSet object is a proper superset of a specified collection in C#, use the IsProperSupersetOf() method. A proper superset contains all elements of another collection plus at least one additional element.

Syntax

The syntax for the IsProperSupersetOf() method is −

public bool IsProperSupersetOf(IEnumerable<T> other)

Parameters

  • other − The collection to compare with the current SortedSet.

Return Value

Returns true if the current SortedSet is a proper superset of the specified collection; otherwise, false.

Proper Superset Relationship Set A (Superset) Set B Additional Elements Set A contains all elements of Set B plus at least one more element

Using IsProperSupersetOf() with Different Sets

Example

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        SortedSet<int> set1 = new SortedSet<int>();
        set1.Add(10);
        set1.Add(20);
        set1.Add(30);
        set1.Add(40);
        set1.Add(50);
        set1.Add(60);
        Console.WriteLine("Elements in SortedSet1...");
        foreach (int res in set1) {
            Console.WriteLine(res);
        }
        
        SortedSet<int> set2 = new SortedSet<int>();
        set2.Add(10);
        set2.Add(20);
        set2.Add(30);
        set2.Add(40);
        set2.Add(50);
        set2.Add(60);
        set2.Add(70);
        set2.Add(80);
        set2.Add(90);
        set2.Add(100);
        Console.WriteLine("Elements in SortedSet2...");
        foreach (int res in set2) {
            Console.WriteLine(res);
        }
        
        Console.WriteLine("SortedSet2 is a proper superset of SortedSet1? = " + set2.IsProperSupersetOf(set1));
    }
}

The output of the above code is −

Elements in SortedSet1...
10
20
30
40
50
60
Elements in SortedSet2...
10
20
30
40
50
60
70
80
90
100
SortedSet2 is a proper superset of SortedSet1? = True

Using IsProperSupersetOf() with Duplicate Elements

Example

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        SortedSet<int> set1 = new SortedSet<int>();
        set1.Add(10);
        set1.Add(10);
        set1.Add(10);
        set1.Add(10);
        Console.WriteLine("Elements in SortedSet1...");
        foreach (int res in set1) {
            Console.WriteLine(res);
        }
        
        SortedSet<int> set2 = new SortedSet<int>();
        set2.Add(10);
        set2.Add(20);
        set2.Add(30);
        set2.Add(40);
        set2.Add(50);
        set2.Add(60);
        set2.Add(70);
        set2.Add(80);
        set2.Add(90);
        set2.Add(100);
        Console.WriteLine("Elements in SortedSet2...");
        foreach (int res in set2) {
            Console.WriteLine(res);
        }
        
        Console.WriteLine("SortedSet2 is a proper superset of SortedSet1? = " + set2.IsProperSupersetOf(set1));
    }
}

The output of the above code is −

Elements in SortedSet1...
10
Elements in SortedSet2...
10
20
30
40
50
60
70
80
90
100
SortedSet2 is a proper superset of SortedSet1? = True

Edge Cases and Important Notes

Example

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        SortedSet<int> setA = new SortedSet<int> { 1, 2, 3 };
        SortedSet<int> setB = new SortedSet<int> { 1, 2, 3 };
        SortedSet<int> emptySet = new SortedSet<int>();
        
        Console.WriteLine("SetA is proper superset of SetB (identical sets): " + setA.IsProperSupersetOf(setB));
        Console.WriteLine("SetA is proper superset of empty set: " + setA.IsProperSupersetOf(emptySet));
        Console.WriteLine("Empty set is proper superset of SetA: " + emptySet.IsProperSupersetOf(setA));
    }
}

The output of the above code is −

SetA is proper superset of SetB (identical sets): False
SetA is proper superset of empty set: True
Empty set is proper superset of SetA: False

Key Rules

  • A proper superset must contain all elements of the other collection.

  • A proper superset must have at least one additional element not in the other collection.

  • If two sets are identical, neither is a proper superset of the other.

  • Any non-empty set is a proper superset of an empty set.

Conclusion

The IsProperSupersetOf() method in C# determines if a SortedSet contains all elements of another collection plus additional unique elements. It returns false for identical sets and true when the current set properly contains the specified collection.

Updated on: 2026-03-17T07:04:36+05:30

198 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements