📜  C#|如何获取SortedSet中的子集

📅  最后修改于: 2021-05-29 13:54:56             🧑  作者: Mango

SortedSet类按排序顺序表示对象的集合。此类位于System.Collections.Generic命名空间下。 SortedSet .GetViewBetween(T,T)方法用于返回SortedSet 中子集的视图。

特性:

  • 在C#中,SortedSet类可用于存储,删除或查看元素。
  • 它保持升序,并且不存储重复的元素。
  • 如果必须存储唯一元素并保持升序,建议使用SortedSet类。

例外情况:

  • ArgumentException:根据比较器,如果lowerValue大于upperValue。
  • ArgumentOutOfRangeException:视图上的尝试操作超出了LowerValueupperValue指定的范围。

范例1:

// C# code to get the subset of a SortedSet
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a SortedSet of strings
        SortedSet mySet1 = new SortedSet();
  
        // Inserting elements in SortedSet
        mySet1.Add("A");
        mySet1.Add("B");
        mySet1.Add("C");
        mySet1.Add("D");
        mySet1.Add("E");
        mySet1.Add("F");
        mySet1.Add("G");
        mySet1.Add("H");
        mySet1.Add("I");
  
        // Get the subset between "C" and "G"
        SortedSet mySet2 = mySet1.GetViewBetween("C", "G");
  
        // Displaying the elements in the subset
        foreach(string str in mySet2)
        {
            Console.WriteLine(str);
        }
    }
}
输出:
C
D
E
F
G

范例2:

// C# code to get the subset of a SortedSet
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a SortedSet of integers
        SortedSet mySet1 = new SortedSet();
  
        // Inserting elements in SortedSet
        for (int i = 0; i < 10; i++) {
            mySet1.Add(i);
        }
  
        // Get the subset between "3" and "7"
        SortedSet mySet2 = mySet1.GetViewBetween(3, 7);
  
        // Displaying the elements in the subset
        foreach(int i in mySet2)
        {
            Console.WriteLine(i);
        }
    }
}
输出:
3
4
5
6
7

参考:

  • https://docs.microsoft.com/zh-cn/dotnet/api/system.collections.generic.sortedset-1.getviewbetween?view=netcore-2.1