java循环链表怎么实现

   2025-02-13 7570
核心提示:在Java中实现循环链表可以使用节点类和循环链表类来实现。以下是一个简单的示例代码:public class Node {private int data;priv

在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

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言