Tag: treeset

TreeSet显示错误的输出

当我在树上工作时,发现了非常奇怪的行为。 根据我的理解,这个程序应该打印两个相同的行: public class TestSet { static void test(String… args) { Set<String> s = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER); s.addAll(Arrays.asList("a", "b")); s.removeAll(Arrays.asList(args)); System.out.println(s); } public static void main(String[] args) { test("A"); test("A", "C"); } } 但奇怪的是它打印: [b] [a, b] 为什么树的行为是这样的?

将TreeSetsorting为对象更改值

我有一个使用Comparable <>定义“自然sorting顺序”的对象。 这些被存储在TreeSets中。 除了删除和重新添加对象之外,是否还有另一种方法来更新用于定义sorting顺序的成员更新的sorting?

Hashset vs Treeset

我一直都很喜欢树木,那个漂亮的O(n * lg(n))和它们的整洁。 但是,我所知道的每一位软件工程师都尖锐地问我为什么要使用TreeSet 。 从CS的背景来看,我认为这不重要,而且我不关心散列函数和存储区(在Java的情况下)。 在哪种情况下,我应该使用TreeSet的HashSet ?