【发布时间】:2018-09-05 07:56:41
【问题描述】:
例如,有一个包含一系列值的二叉搜索树。在添加新值之前,我需要检查它是否已经包含它“几乎重复”。我有 Java 解决方案,它简单地执行地板和天花板以及完成这项工作的进一步条件。
JAVA:给定一个TreeSet,floor()返回这个集合中小于或等于给定元素的最大元素; ceiling() 返回此集合中大于或等于给定元素的最小元素
TreeSet<Long> set = new TreeSet<>();
long l = (long)1; // anything
Long floor = set.floor(l);
Long ceil = set.ceiling(l);
C#:最近的数据结构似乎是SortedSet<>。任何人都可以建议获得输入值的 floor 和 ceil 结果的最佳方法吗?
SortedSet<long> set = new SortedSet<long>();
【问题讨论】:
-
可能是
Math.Floor和Math.Ceiling。l是什么? -
@SeM,我需要在 BST 范围内运行的地板和天花板方法
-
这在 .Net 中非常需要。如果不编写自己的数据结构,就无法实现范围广泛的算法。
标签: c# .net binary-search-tree