Tag: treemap

无法按升序对列表进行排序

Map map ; List<Map> list = new ArrayList<Map>(); /////OnCreate…………. function1(){ map = new TreeMap(); map.put(“id”, “id”); map.put(“amont”, “amount”); list.add(map); System.out.println(list); } id = 1,3,5,57,80的输入值 金额的输入值= 100,500,200,10,10000 无法按金额的升序对列表进行排序。 它仍按插入顺序显示。 我该如何解决? 我感谢任何帮助。 提前致谢。 预期产量:数量上升顺序: amt=10 id=4 amt=100 id=1 amt=200 id=3 amt=500 id=2 amt=10000 id=5

在Java中,通过key.length()对哈希映射进行排序

我有这样的hashmap: HashMap map = new HashMap(); map.put(“java”,4); map.put(“go”,2); map.put(“objective-c”,11); map.put(“c#”,2); 现在我想按照它的密钥长度对这个映射进行排序,如果两个密钥长度相等(例如go和c#都是长度2),那么按照alphba顺序排序。 所以我期望得到的结果是这样的: 打印结果:objective-c,11 java,4 c#,2 go,2 这是我自己的玩具,但它根本不起作用…… HashMap map = new HashMap(); map.put(“java”,4); map.put(“go”,2); map.put(“objective-c”,11); map.put(“c#”,2); Map treeMap = new TreeMap( new Comparator() { @Override public int compare(String s1, String s2) { return s1.length().compareTo(s2.length()); } } ); 实际上’compareTo’方法显示为红色(无法编译)….请有人帮我一些代码示例…我有点困惑如何使用比较器类来自定义比较对象…

基于key对树图进行排序,其中key是可变的

我想根据键是一个变量的键对树映射进行排序,因此排序应该基于变量值,我们如何实现这一点? 我希望在构建的排序方法中使用rathar通过代码实现它,任何回复示例都有很大的帮助。

比较器必须覆盖超类方法

我正在制作一个TreeMap并希望以降序排序。 我创建了以下比较器: Comparator descender = new Comparator() { @Override public int compare(String o1, String o2) { return o2.compareTo(o1); } }; 我像这样构造TreeMap: myMap = new TreeMap(descender); 但是,我收到以下错误: The method compare(String, String) of type new Comparator(){} must override a superclass method 我从未完全弄清楚仿制药,我做错了什么?

在Java TreeMap中查找元素位置

我正在使用字符串TreeMap ,并使用它来实现单词的Dictionay。 然后我有一个文件集合,并希望在字典定义的向量空间(单词空格)中创建每个文件的表示。 每个文件都应该有一个表示它的向量,具有以下属性: 矢量应该与字典大小相同 对于文件中包含的每个单词,向量在与字典中的单词位置对应的位置应该具有1 对于未包含在文件中的每个单词,向量在对应于字典中单词位置的位置应该具有-1 所以我的想法是使用Vector来实现这些向量。 (这种表示集合中文档的方式称为布尔模型 – http://www.site.uottawa.ca/~diana/csi4107/L3.pdf ) 我在创建这个向量的过程中遇到的问题是我需要一种方法来查找字典中单词的位置,如下所示: String key; int i = get_position_of_key_in_Treemap(key); <— purely invented method… 1)我可以在TreeMap上使用这样的方法吗?如果没有,你能提供一些代码来帮助我自己实现吗? 2)TreeMap上是否有一个迭代器(按字母顺序排列),我可以获得它的位置? 3)最终我应该使用另一个类来实现字典?(如果你认为使用TreeMaps我不能做我需要的)如果是的话,哪个? 提前致谢。 增加部分: 由dasblinkenlight提出的解决方案看起来很好,但是存在复杂性问题(由于将密钥复制到数组中而与字典的维度呈线性关系),并且不能接受为每个文件执行此操作的想法。 对我的问题还有其他想法吗?

Java TreeMap相当于C#?

我咨询的大多数地方都说使用SortedList,但问题是我移植的程序实际上使用了重复键(按顺序区分),这是TreeMap允许的,但不是SortedList。 任何建议?

在Java中存储国家/地区代码,名称和Continent的最佳方式

我想要一个List或某种类型的Array ,存储有关每个国家的信息: 2个字母代码 国家名称,如巴西 世界大陆/地区,如东欧,北美等。 我会手动将每个国家分类到地区/大陆(但如果有办法自动执行此操作,请告诉我)。 这个问题是关于如何存储和访问这些国家。 例如,我希望能够检索北美的所有国家/地区。 我不想使用本地文本文件等,因为这个项目将使用Google Web Toolkit转换为javascript。 但是存储在Enum或某种类型的其他资源文件中,将其与其余代码分开,就是我真正想要的。

Java的。 按值排序地图

可能重复: 如何在Java中的值上对Map 进行排序? 我需要像TreeMap这样排序的地图,但按值排序。 我的地图将是巨大的,所以我不能随时对我的地图进行排序。 是否存在解决此问题的良好解决方案? 也许存在符合此要求的外部jar子?

将Java TreeMap代码迁移到Scala?

我正在将我的Java代码库迁移到纯Scala,我仍然坚持使用这一段代码 。 我有一个IntervalMap的实现,即一个数据结构,让你有效地将范围[from,to]映射到set , delete和get操作都是O(log n) (与IntervalTree或SegmentTree略有不同)。 这段代码使用Java的java.util.TreeMaps ,在迁移到Scala时,我遇到了两个大问题: Scala没有mutable.TreeMap – 我决定通过使用mutable.TreeSet (奇怪的是Scala有mutable.TreeSet但没有mutable.TreeMap )来存储密钥并将值存储在辅助的mutable.Map 。 这是一个令人不快的黑客,但还有更好的方法吗? 下一个问题是Scala的mutable.TreeSet没有java.util.TreeSet的ceilingKey , floorEntry , pollFirst , pollLast等同于Java中的所有O(log n)操作。 那么,我怎样才能最好地将我的代码迁移到Scala? 这些情况下的最佳做法是什么? 我真的不想编写自己的树实现。 有没有更惯用的Scala编写IntervalMaps的方式,我不知道? 或者那里有一些有信誉的图书馆? 或者Scala只是简单地使用它的gimped TreeSet和不存在的TreeMaps来吮吸它。 当然,我可以在Scala中使用Java的TreeMap ,但这很难看,我失去了所有不错的Scala集合function,我不妨使用Java。 这是我目前的Java代码: https : //gist.github.com/pathikrit/5574521

如何以相反的顺序打印树形图

在我的作业中,我们从文件中读取文字: 成为或不成为:这是一个问题: 是否在心中更高尚受苦 然后计算每次发生的次数。 我已经能够打印这个未分类的地图了,然后我就可以制作一个TreeMap并按照自然顺序打印它(如下所示)。 我不知道如何以相反的顺序打印。 我知道一种使用比较器的方法,但我有点生疏,所以我尽我所能。 此外,我不知道如何设置比较器以将Treemap排序为相反的顺序。 这是我打印未排序和自然排序的方法: private static void sortPrintFrequencies(Map vocabulary, PrintStream output { Iterator iterator = vocabulary.keySet().iterator(); System.out.println(“Unsorted”); while (iterator.hasNext()) { String key = iterator.next().toString(); String value = vocabulary.get(key).toString(); String times = “times.”; String appears = “appears”; System.out.printf(“%35s”, key + ” ” + appears + ” ” + value + ” […]