我有一個問題,添加元素在liked表插入雙向鏈表
public class LinkedList {
public Node first;
public Node last;
public LinkedList() {
first = null;
last = null;
}
public void addFirst(Student student) {
Node f = first;
Node newNode = new Node(student);
first = newNode;
if (f == null) last = newNode;
else f.previous = newNode;
}
public void addLast(Student student) {
Node l = last;
Node newNode = new Node(student);
last = newNode;
if (l == null) first = newNode;
else {
l.next = newNode;
}
}
public void display() {
Node current = first;
while (current != null) {
//print...
current = current.next;
}
}
我的問題是,當我運行:
list.addLast(1);
list.addFirst(2);
list.display();
它顯示只是「2」「顯示」方法只是看不到最後添加的元素。
但是,如果我運行:
list.addFirst(2);
list.addLast(1);
這將同時顯示。 它有什麼問題? 謝謝。
我明白了,它會打印最後一個添加的元素。 – Nikita