亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java循環鏈表怎么實現

小億
94
2023-12-01 22:58:57
欄目: 編程語言

在Java中實現循環鏈表可以使用節點類和循環鏈表類來實現。以下是一個簡單的示例代碼:

public class Node {
    private int data;
    private Node next;

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

    public int getData() {
        return data;
    }

    public void setData(int data) {
        this.data = data;
    }

    public Node getNext() {
        return next;
    }

    public void setNext(Node next) {
        this.next = next;
    }
}

public class CircularLinkedList {
    private Node head;

    public void addToEmptyList(int data) {
        Node newNode = new Node(data);
        newNode.setNext(newNode);
        head = newNode;
    }

    public void addToFront(int data) {
        Node newNode = new Node(data);
        if (head == null) {
            addToEmptyList(data);
        } else {
            newNode.setNext(head);
            Node temp = head;
            while (temp.getNext() != head) {
                temp = temp.getNext();
            }
            temp.setNext(newNode);
            head = newNode;
        }
    }

    public void addToEnd(int data) {
        Node newNode = new Node(data);
        if (head == null) {
            addToEmptyList(data);
        } else {
            newNode.setNext(head);
            Node temp = head;
            while (temp.getNext() != head) {
                temp = temp.getNext();
            }
            temp.setNext(newNode);
        }
    }

    public void display() {
        if (head == null) {
            System.out.println("List is empty");
        } else {
            Node temp = head;
            do {
                System.out.print(temp.getData() + " ");
                temp = temp.getNext();
            } while (temp != head);
            System.out.println();
        }
    }

    public static void main(String[] args) {
        CircularLinkedList list = new CircularLinkedList();
        list.addToEnd(1);
        list.addToEnd(2);
        list.addToFront(3);
        list.display();
    }
}

這個示例代碼中,Node類表示鏈表的節點,具有數據和下一個節點的引用。CircularLinkedList類表示循環鏈表,使用頭節點(head)來表示循環鏈表的起始位置。

addToEmptyList方法用于在空鏈表中添加一個節點,addToFront方法用于在鏈表的前面添加一個節點,addToEnd方法用于在鏈表的末尾添加一個節點。

display方法用于打印循環鏈表的所有節點。

main方法中,我們創建了一個循環鏈表,并添加了一些節點,然后調用display方法打印鏈表的內容。

輸出結果為:3 1 2

0
舒兰市| 页游| 普兰店市| 岚皋县| 武汉市| 太保市| 颍上县| 通山县| 永仁县| 腾冲县| 台南县| 隆化县| 宝兴县| 博爱县| 龙井市| 全南县| 深州市| 茶陵县| 晋州市| 左权县| 崇阳县| 柘城县| 竹山县| 桐梓县| 县级市| 山丹县| 岳普湖县| 镇沅| 高要市| 南澳县| 尤溪县| 长兴县| 乌拉特中旗| 满城县| 攀枝花市| 曲靖市| 十堰市| 交口县| 塔城市| 方城县| 泰来县|