Java 搜索和排序时要使用什么集合
关于在stackoverflow上搜索集合,有很多帖子。这里也有很多关于集合排序的帖子。我正在寻找一个解决方案(数据结构)处理这两个问题。地图非常适合搜索(即map.containsKey(键)、map.get(键))。ArrayList非常适合排序(使用简单的比较器)。 我的程序向HashMap添加元素(使用.containsKey(key)检查重复项)。然后将贴图值指定给Arraylist。这很简单(一行代码),但效率极低。它使用了两倍的内存 程序调用唯一的元素,但是重复的元素呢?我扫描了Javadocs,发现有许多集合类型可以满足您的需要(map、list、table、set、tree、vector、priorityqueue等等)。是否有一个Java集合处理搜索和排序,包括重复元素?您考虑过吗 映射根据其键的自然顺序进行排序,或者由映射创建时提供的Java 搜索和排序时要使用什么集合,java,search,sorting,collections,Java,Search,Sorting,Collections,关于在stackoverflow上搜索集合,有很多帖子。这里也有很多关于集合排序的帖子。我正在寻找一个解决方案(数据结构)处理这两个问题。地图非常适合搜索(即map.containsKey(键)、map.get(键))。ArrayList非常适合排序(使用简单的比较器)。 我的程序向HashMap添加元素(使用.containsKey(key)检查重复项)。然后将贴图值指定给Arraylist。这很简单(一行代码),但效率极低。它使用了两倍的内存 程序调用唯一的元素,但是重复的元素呢?我扫描了J
比较器进行排序,具体取决于使用的构造函数
你考虑过吗
映射根据其键的自然顺序进行排序,或者由映射创建时提供的比较器进行排序,具体取决于使用的构造函数
你试过吗。它们将非常适合搜索(O(ln n)),并且将围绕一个比较器进行排序,您可以使用.values()方法获得该比较器。您是否尝试了一个新的方法。它们将非常适合搜索(O(ln n)),并且将围绕一个比较器进行排序,您可以使用.values()方法获得该比较器。所以您希望按键搜索,然后按值排序,对吗?那么您希望按键搜索,然后按值排序,对吗?看起来树形图可以搜索和排序键。它具有.containsKey(key)和.get(key)方法,以及在实例化期间使用比较器进行排序/排序的功能,以始终保持键的有序。请稍候。。。对值进行排序怎么样?看起来树形图可以对键进行搜索和排序。它具有.containsKey(key)和.get(key)方法,以及在实例化期间使用比较器进行排序/排序的功能,以始终保持键的有序。请稍候。。。对值进行排序怎么样?