Java 按字母顺序排列链表
我正在处理一个数据结构分配,所以我没有使用java中内置的Linkedlist。我需要按字母顺序对节点进行排序。我可以使用这种内置的排序吗?作业没有强调我们的排序方法,所以我在寻找最简单的方法。IDE抱怨我的列表参数,这让我觉得这不可能:Java 按字母顺序排列链表,java,sorting,Java,Sorting,我正在处理一个数据结构分配,所以我没有使用java中内置的Linkedlist。我需要按字母顺序对节点进行排序。我可以使用这种内置的排序吗?作业没有强调我们的排序方法,所以我在寻找最简单的方法。IDE抱怨我的列表参数,这让我觉得这不可能: Collections.sort(list, new Comparator<String>() { @Override public int compare(String text1, String text2) { return text
Collections.sort(list, new Comparator<String>()
{
@Override
public int compare(String text1, String text2)
{
return text1.compareToIgnoreCase(text2);
}
});
Collections.sort(列表,新比较器()
{
@凌驾
公共整数比较(字符串text1、字符串text2)
{
返回text1.compareTignoreCase(text2);
}
});
要使用内置排序功能,列表结构必须实现列表
界面
这是根据签名:
public static <T> void sort(List<T> list, Comparator<? super T> c)
为了能够使用内置的排序功能,列表结构必须实现
list
界面
这是根据签名:
public static <T> void sort(List<T> list, Comparator<? super T> c)
不,您只能对使用内置方法实现java.util.List的列表进行排序。不,您只能对使用内置方法实现java.util.List的列表进行排序。IDE到底抱怨什么?从下面列出的问题来看,我建议您自己编写排序。最简单的是冒泡排序。IDE到底抱怨什么?从下面列出的问题来看,我建议您只编写自己的排序。最简单的是冒泡排序。但是,如果我实现了列表接口,我想我并不是真正从头开始构建自己的列表,因此我将不得不在排序中弄脏。这不完全是真的,如果你实现了接口,你只需定义外部对象如何访问列表,但提供了你自己的实现。这是必需的,因为
Collection.sort(…)
方法必须知道如何访问列表。在任何情况下,作为一个数据结构分配,我想你也应该提供你自己的排序算法函数。但是,如果我实现了列表接口,我想我并不是真正从头开始构建我自己的列表,所以我将不得不在排序时弄脏。这不完全是真的,如果实现接口,则只需定义外部对象访问列表的方式,但提供自己的实现。这是必需的,因为Collection.sort(…)
方法必须知道如何访问列表。无论如何,作为一个数据结构分配,我想你也应该提供你自己的排序算法功能。但是你可以让列表实现列表接口,然后你可以进行内置排序。同意,但考虑到OP讨论的是数据结构分配,而不想使用内置类,似乎可以概括出实现该接口的唯一方法。但您可以让列表实现列表接口,然后再进行内置排序。同意,但是,鉴于OP讨论的是数据结构分配,而不想使用内置类,因此似乎可以公平地概述实现该功能的唯一方法是实现该接口。