Java 遍历二进制搜索树
我想用Java浏览字典中的每一项。为了说明我想做什么,下面是C代码:Java 遍历二进制搜索树,java,binary-search-tree,Java,Binary Search Tree,我想用Java浏览字典中的每一项。为了说明我想做什么,下面是C代码: 字典标签列表=新字典(); foreach(LabelList中的KeyValuePair z){…} 要在不使用映射迭代器的情况下进行迭代: for(Type t : map.values().toArray(new Type[map.size()])) { //values } 虽然我已经有一段时间没有使用过这个工具了,但是可能有一种更干净的方法来实现这个功能,您想要使用的是或来实现Java中的字典。Ha
字典标签列表=新字典();
foreach(LabelList中的KeyValuePair z){…}
要在不使用映射迭代器的情况下进行迭代:
for(Type t : map.values().toArray(new Type[map.size()])) {
//values
}
虽然我已经有一段时间没有使用过这个工具了,但是可能有一种更干净的方法来实现这个功能,您想要使用的是或来实现Java中的字典。HashMap类使用哈希来维护字典,而TreeMap使用红黑树(BST的变体)来维护字典
temp += ("<" + it.next() + ", " + bstd.getValue(it.next()) + ">");
此外,如果映射是从字符串到类标签,则可以使用以下代码。您还必须导入java.util.*并单独声明Label类,代码才能成功运行
TreeMap<String, Label> map = new TreeMap<String, Label>();
for (Map.Entry<String, Label> entry : map.entrySet()){
System.out.println(entry.getKey() + "/" + entry.getValue());
}
TreeMap map=newtreemap();
对于(Map.Entry:Map.entrySet()){
System.out.println(entry.getKey()+“/”+entry.getValue());
}
什么是BinarySearchTreeDictionary
?它的迭代器
方法是什么?什么是BinarySearchTreeDictionary
?它是否有映射的支持?
?请添加所获得的错误和堆栈跟踪。因此,即使不知道二进制搜索目录是什么,您也可能不希望每次迭代调用.next()
。更相关:我可以想象,iterator()
将迭代器返回到完整的条目集,或者只是返回值列表(因为它显然不会返回键集的直接迭代器);因此,您需要检查BinarySearchTreeDictionary
的文档/方法,并适当地使用正确的方法(无论它们是什么)。//BinarySearchDictionary是我的类名//来自实现可比接口的类。公共类BinarySearchTreeDictionary实现Iterable{
Object current = it.next();
temp += ("<" + current + ", " + bstd.getValue(current) + ">");
TreeMap<String, Label> map = new TreeMap<String, Label>();
for (Map.Entry<String, Label> entry : map.entrySet()){
System.out.println(entry.getKey() + "/" + entry.getValue());
}