当前位置: 首页 > 面试题库 >

树集以降序对元素进行排序

蒋招
2023-03-14
问题内容

这是我用于Java 5.0的代码片段

TreeSet<Integer> treeSetObj = new TreeSet<Integer>( Collections.reverseOrder() ) ;

Collections.reverseOrder() 用于获取比较器,以反转元素的存储和迭代方式。

有没有更优化的方法呢?


问题答案:

您为什么认为这种方法不会得到优化?相反的顺序Comparator简单地将被翻转从实际输出的符号Comparator(或输出compareTo上的Comparable物体插入),因此我会想象它是非常快的。

另一个建议:与其更改存储元素的顺序,不如使用该descendingIterator()方法以降序迭代它们。



 类似资料:
  • 主要内容:算法总结及实现,优化算法在实际开发中,有很多场景需要我们将数组元素按照从大到小(或者从小到大)的顺序排列,这样在查阅数据时会更加直观,例如: 一个保存了班级学号的数组,排序后更容易分区好学生和坏学生; 一个保存了商品单价的数组,排序后更容易看出它们的性价比。 对数组元素进行排序的方法有很多种,比如冒泡排序、归并排序、选择排序、插入排序、快速排序等,其中最经典最需要掌握的是「冒泡排序」。 以从小到大排序为例,冒泡排序的整体

  • 极端Java新手。我正在做一些简单的练习,以便练习语言的基本概念。 其中一个练习要求我实现一个MusicAlbum类,该类的实例属性之一是MusicTrack类的实例列表。 由于每个MusicTrack都必须通过其id进行唯一标识,并且考虑到所述列表必须“排序”(尽管没有实际的指示),我选择了树集。 因此,我在MusicTrack类中实现了Comparable,以便MusicBum的集合将根据它包

  • 本文向大家介绍jQuery拖动元素并对元素进行重新排序,包括了jQuery拖动元素并对元素进行重新排序的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery拖动元素并对元素进行重新排序的实现方法,分享给大家供大家参考,具体实现内容如下 效果图: 具体内容如下: 从上图可以看出我们今天要实现的功能。当用户拖动一个图片时,就能改变图片的已有排序并更新表中的排列顺序。比如用户可以随意拖动我

  • 我有98000个美国家庭街道地址,我需要按照“步行”的顺序进行排序,也就是说,按照你要走的顺序,沿着街道的一侧走,然后穿过街道往回走。 所需的df结果,对奇数街道编号进行升序排序,然后对偶数街道编号切换到降序排序。[抱歉,第一个问题,还没有资格复制Jupyter笔记本的图像] 4列:数字、街道、城镇、偶数 “编号”列的预期结果:1231 1233 1235 1237 1239 1238 1236

  • 我试图理解使用中给出的递归对堆栈元素进行排序http://www.geeksforgeeks.org/sort-a-stack-using-recursion/不允许使用while、for…等任何循环结构。我们只能在堆栈S上使用以下ADT函数: is_empty(S):测试堆栈是否为空。 push(S) :向堆栈添加新元素。 Pop(S):从堆栈中删除顶部元素。 top(S) :返回 top 元素

  • 我想按第三个和第一个元素对元组数组进行排序,因此我使用了以下代码: 我的问题是,在前面的例子中,我可以按第三个元素和第一个元素的升序排序,也可以按它们的降序排序(使用反向)。但是如何按第三个元素的升序和第一个元素的降序排序。 请在你的回答中考虑以下情况: 在这种情况下,我不知道内部数组的确切大小(取决于我读入该数组的文件模式),我想按侧中的所有项进行排序(一些升序和一些降序)。 编辑:看起来,我明