【问题标题】:Is it possible to bubblesorting an array of objects?是否可以对一组对象进行冒泡排序?
【发布时间】:2011-03-13 21:09:37
【问题描述】:

我有一个由 .txt 文件填充的对象数组

Object[] punteggiTutti = scores.toArray();

即使可以使用 .sort 功能:

Arrays.sort(punteggiTutti, Collections.reverseOrder());

我会知道如何应用有效的冒泡排序算法;我尝试了以下不起作用的代码:

for(int i=0; i<j; i++) 
    {
    if(punteggiTutti[i]<punteggiTutti[i+1])  // error "<" operator cannot be used in objects 
      {
      temp=punteggiTutti[i]; 
      punteggiTutti[i]=punteggiTutti[i+1];
      punteggiTutti[i+1]=temp;
      }
    }

【问题讨论】:

  • 你明白错误的意思吗?
  • 我当然愿意!!!所以我的问题的答案很简单……不可能?! :)
  • 这是一个从 .txt 文件创建的数组 在第一个文件中我有球队得分 在第二个文件中我有球队的名称。我需要冒泡排序来创建一个唯一索引,该索引可以对从 2 个文件创建的两个数组进行排序有什么想法吗?
  • 你需要弄清楚如何比较你的对象。

标签: java arrays object bubble-sort


【解决方案1】:

你不能用

使用实现 Comparable 接口的东西。然后可以使用函数 a.compareTo(b); 比较这些元素;

http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Comparable.html

还可以看看: http://leepoint.net/notes-java/data/expressions/22compareobjects.html

尝试阅读 Java 中的相等性。这应该可以帮助您在使用 Java 时解决未来的错误。

【讨论】:

    【解决方案2】:

    为您的对象创建一个比较器,以将对象与另一个进行比较。 内置的mergeSort算法比冒泡排序快很多。

    http://www.iti.fh-flensburg.de/lang/algorithmen/sortieren/sortcontest/sortcontest.htm http://www.sorting-algorithms.com/

    【讨论】:

      猜你喜欢
      • 2021-09-16
      • 2012-04-14
      • 2022-06-25
      • 2022-01-25
      • 2021-06-10
      • 2017-01-24
      • 1970-01-01
      • 2020-04-08
      • 2016-04-13
      相关资源
      最近更新 更多