Java简单链接列表

问题描述 投票:0回答:1

我正在大学攻读数据结构课程,并且很难理解为什么我的单链接列表不遵循FIFO算法。

这是我的Node / PSVM类:

public class Node {

    protected int data;
    protected Node next;

    Node(int element){
        this.data = element;
        next = null;
    }



    public static void main(String[] args) {
        LinkedList ll = new LinkedList();

        ll.addElement(300);
        ll.addElement(600);
        ll.addElement(900);
        ll.addElement(1200);


        ll.printList();
    }
}

这是我的链表类别:


public class LinkedList {

    // create a reference of type node to point to head
    Node head;

    // keep track of the size of ll
    int size = 0;

    void printList() {
        Node n = head;

        for (int i = 0; i < llSize(); i++) {
            System.out.print(n.data + " ");
            n = n.next;

        }
        System.out.println("");
    }


    int llSize() {
        return this.size;
    }

    boolean isEmpty() {
        return size == 0;
    }

    void addElement(int element) {

        if (isEmpty()) {
            head = new Node(element);

        } else {
            Node nNode = new Node(element);
            Node current = head;

            while(current.next != null){
                current = current.next;
            }

            current.next = nNode;

        }

        this.size++;

    }


}

如果这是一个基本问题/问题,请先抱歉。我已经问过我的教授,她给我发送了一个YouTube链接,该链接确实没有帮助。

谢谢您的时间。

java algorithm data-structures linked-list singly-linked-list
1个回答
1
投票

该代码没有错误。

为了使列表充当FIFO,节点将被添加到一端并从另一端删除。

因此,您将必须实现delete操作。您可以维护对头节点和尾节点的单独引用。

© www.soinside.com 2019 - 2024. All rights reserved.