Java 中的出队实施错误
Dequeue implementation error in Java
我尝试实现出列。
下面是我的部分代码。我使用 print() 函数来打印 Dequeue 中的所有节点,但节点似乎根本没有连接。
addLast() 函数尝试在连接到出队时新建一个节点。
public class Test<Item>{
private Node first, last;
private int N;
private class Node{
Item value;
Node next;
}
public void addLast(Item item){
Node oldLast = last;
Node last = new Node();
last.value = item;
last.next = oldLast;
N++;
}
public void print(){
Node temp = last;
while(temp != null){
System.out.println(temp.value);
temp = temp.next;
}
}
public static void main(String[] args){
Test<String> deque = new Test<String>();
deque.addLast("hello");
deque.addLast("first");
deque.addLast("second");
deque.addLast("third");
}
}
在addLast()
方法中:
而不是 Node last = new Node();
你应该写:
last = new Node();
我尝试实现出列。
下面是我的部分代码。我使用 print() 函数来打印 Dequeue 中的所有节点,但节点似乎根本没有连接。
addLast() 函数尝试在连接到出队时新建一个节点。
public class Test<Item>{
private Node first, last;
private int N;
private class Node{
Item value;
Node next;
}
public void addLast(Item item){
Node oldLast = last;
Node last = new Node();
last.value = item;
last.next = oldLast;
N++;
}
public void print(){
Node temp = last;
while(temp != null){
System.out.println(temp.value);
temp = temp.next;
}
}
public static void main(String[] args){
Test<String> deque = new Test<String>();
deque.addLast("hello");
deque.addLast("first");
deque.addLast("second");
deque.addLast("third");
}
}
在addLast()
方法中:
而不是 Node last = new Node();
你应该写:
last = new Node();