rokevin
移动
前端
语言
  • 基础

    • Linux
    • 实施
    • 版本构建
  • 应用

    • WEB服务器
    • 数据库
  • 资讯

    • 工具
    • 部署
开放平台
产品设计
  • 人工智能
  • 云计算
计算机
其它
GitHub
移动
前端
语言
  • 基础

    • Linux
    • 实施
    • 版本构建
  • 应用

    • WEB服务器
    • 数据库
  • 资讯

    • 工具
    • 部署
开放平台
产品设计
  • 人工智能
  • 云计算
计算机
其它
GitHub
  • 循环链表

  • 3. 循环链表(Circular Linked List)

循环链表

循环链表 (Circular Linked List)

3. 循环链表(Circular Linked List)

  • 定义:单链表的变种,最后一个节点的 next 指向头节点,形成闭环。

  • 性质:

    • 支持从任意节点开始遍历整个链表。
    • 常用于需要循环访问的场景(如操作系统的任务调度)。
  • Java 实现:

    class CNode {
        int data;
        CNode next;
        
        CNode(int data) {
            this.data = data;
            this.next = null;
        }
    }
    
    class CircularLinkedList {
        private CNode head;
        
        // 在头部插入
        public void insertAtBeginning(int data) {
            CNode newNode = new CNode(data);
            
            if (head == null) {
                newNode.next = newNode; // 自己指向自己
                head = newNode;
                return;
            }
            
            CNode last = head;
            while (last.next != head) {
                last = last.next;
            }
            
            newNode.next = head;
            last.next = newNode;
            head = newNode;
        }
    }
    
最近更新:: 2025/10/27 23:01
Contributors: luokaiwen