可以使用可比较项目的方法进行排序,同时将它们插入到列表中

时间:2018-09-16 00:21:51

标签: java sorting linked-list comparable

我不确定该如何正确命名。 继承人我试图解决的问题,提示是:

在此问题中,您将创建一个方法,该方法将所有可比较项数组中的所有项都放入列表中。它将能够将这些项目存储在实现List接口的任何类中,因此您将从上面同时使用ArrayList和SingleLinkedList2类。

首先,编写一个具有以下标题的方法:

private static void sort(Comparable[] items, List aList)  

排序方法应在开始使用其排序算法之前,使用List类中的clear方法删除所有条目。

然后,应按它们在数组中出现的顺序处理数组中的项目,并将它们一次放置在列表中。

在将它们插入列表之前,请勿对它们进行排序。 在列表中添加时,必须将该项目放置在列表中的正确位置,以便始终对列表进行排序。 如果列表中已经有一项,请不要再次输入(避免重复)

这是我到目前为止所拥有的:

 private static void sort(Comparable[] items, List aList)
{
        aList.clear();
        aList.add(0, items[0]);
        int count = 0;
        for (int i = 1; i < items.length; i++)
        {
            if(items[count].compareTo(aList.get(i)) < 0)
            {
                aList.add(i - 1, items[i]);
            }
            else if(items[count].compareTo(aList.get(i - 1)) > 0)
            {
                aList.add(i);
            }
            count++;
            count -= 1;
        }
}

所以,我陷入了困境。如果您可以在上面看到,我认为我正在做的是将项目与List中已有的项目进行比较(在循环之前,我将第一个元素添加到列表中,并初始化并声明了一个计数器)。因此,我们可能希望能够在对数组和新列表进行排序时引用它。

0 个答案:

没有答案