简体   繁体   English

如何在没有比较器的 java 中使用 MergeSort 对对象数组进行排序

[英]How to sort an array of objects using MergeSort in java without comparator

I need to sort a huge array of objects.我需要对大量对象进行排序。 Each object contains a number.每个 object 都包含一个数字。 I need to sort it by that number, but I can't use a comparator.我需要按该数字对其进行排序,但我不能使用比较器。 Is it possible to do it using a mergesort algorithm?是否可以使用mergesort排序算法来做到这一点?

As long as each object has a way to be compared (typically done in a 'compareTo(T other)' function), mergesort is a viable solution.只要每个 object 都有一种比较方法(通常在 'compareTo(T other)' 函数中完成),归并排序是一个可行的解决方案。

EDIT: More thoroughly, it would look something like this:编辑:更彻底,它看起来像这样:

public int compareTo(T other){
    if this.getNumber() == other.getNumber(){
        return 0;
    }
    else if this.getNumber() > other.getNumber(){
        return 1;
    }
    else{
        return -1;
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在不使用比较器的情况下按在 Java 中遇到 substring 的次数对对象列表进行排序? - How to sort a list of objects by number of times a substring is encountered in Java without using Comparator? 如何使用Java中的比较器在列表界面中对语言环境对象列表进行排序 - How to sort list of locale objects in list interface using comparator in java 如何在 Java 中通过 MergeSort 对点数组进行排序? - How to sort an Array of Points by MergeSort in Java? 如何在Android或Java中实现比较器以对对象进行排序 - How implement comparator in to sort objects in android or java 如何使用Java 8中的自定义Comparator接口对对象进行排序? - How to sort an object Array using a custom Comparator interface in Java 8? 如何在java中使用比较器对字符串记录数组进行排序? - how to sort an array of string records using comparator in java? 如何使用 java 中的比较器对二维数组进行排序 - How to sort two dimensional array using Comparator in java 使用 java 比较器对字符数组进行排序 - Sort character array using java comparator 使用自定义比较器对原始数组进行排序,而无需转换为对象 - Sort an array of primitives with a custom comparator and without converting to objects 使用Java中的比较器逻辑对对象进行排序 - Sort the Objects with comparator logic in java
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM