如何在最后一个链表中添加值

时间:2018-05-25 18:44:07

标签: java linked-list

如何在链接列表的最后添加值。当我运行代码时,addAtLast()方法不会返回更新的列表。最后一个值,即50不会添加到返回的列表中。

public Node addAtLast(Node head, int data) {

    Node temp = head;
    Node newNode = new Node(data);
    while (null != temp)
        temp = temp.next;
    temp = newNode;
    System.out.println(temp);
    return head;

}

...

2 个答案:

答案 0 :(得分:1)

<port> 对原始链接列表没有影响。

要在列表末尾添加temp = newNode;,您必须找到最后一个Node,这是Node的第一个Node。然后,您修改temp.next == null的{​​{1}}以引用新的temp.next

Node

答案 1 :(得分:1)

这里:

temp = newNode;

您将新元素分配给永远不会与您的链接列表关联的temp变量,因为分配对变量的引用会使其指向新事物。

此外,您需要的是停止迭代,因为当前元素没有下一个元素,而当前元素不是null。否则,您无法引用最后一个元素,只有null

你应该写一些类似的东西:

while (temp.next != null)
    temp = temp.next;
// here temp refers the last element of the chain as it doesn't have next element
temp.next = newNode;