添加数字时对链接列表进行排序

时间:2018-07-03 19:15:29

标签: java

我正在尝试创建一个排序的链表,该链表在Java中添加新数字时进行排序。我希望程序工作的方式是将新节点插入正确的位置,以便对其进行排序。但是,我不断收到NullPointerException。 这是我的代码:

const tupleTransformer: tupleTransform<[string, number]> = [() => 'a', () => 5]

我不知道为什么它不起作用。

2 个答案:

答案 0 :(得分:0)

如果您的数字集合不能包含任何重复项(每个数字只能出现一次),则只需使用TreeSet<Integer>。 TreeSet保持其自身的排序,并且不允许重复。这将比每次有列表进入时都进行排序的列表更加有效,并且使用起来也更加容易。

如果您的数字集合可以包含重复项,那么您将需要使用更复杂的方法。我将使用TreeMap<Integer, Integer>,以便地图键是您的数字,地图值是该数字已添加到地图的次数。

关于您现有的代码,任何未分配对象的对象引用将默认为null的值,并且您不能调用任何方法或引用null引用上的任何字段(或“空指针”)。

答案 1 :(得分:0)

当您将curr = first.next设置为null时,这是您从中获取空点异常的地方...以后,我敦促您在IDE中使用调试器功能轻松解决此问题您可以熟悉此功能,这样可以节省您数小时的烦恼!

欢呼