使用Node类将Last元素移到第一个



我用队列创建了链表,但我需要一种方法的帮助

public class QueueLinkedList{
private Node first;
private Node last;
public QueueLinkedList(){
   first = null;
   last = null;
}
class Node{
   public Object data;
   public Node next;
}
    ...
public void lastToFirst(){
   Node newNode = new Node();
   newNode.data = last.data;
   newNode.next = first;
   first = newNode;
}

当我用运行我的演示课程时

q.add("1");
q.add("2");
q.add("3");
q.add("4");
q.lastToFirst();
while(!q.isEmpty()){
   System.out.print(q.remove());
}

我的期望值是4123

但它给了我41234。

如何删除最后一个值4?

问题是您没有将引用更新为last。

最新更新