中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java listnode怎樣使用

小樊
81
2024-11-20 16:28:00
欄目: 編程語言

ListNode 是鏈表數據結構中的一個節點類,通常用于表示鏈表中的一個元素。在 Java 中,你可以創建一個名為 ListNode 的類,如下所示:

public class ListNode {
    int val; // 節點的值
    ListNode next; // 指向下一個節點的指針

    // 構造方法
    public ListNode(int val) {
        this.val = val;
        this.next = null;
    }
}

要使用 ListNode 類,你可以創建一個鏈表并對其進行操作,例如添加元素、刪除元素、查找元素等。以下是一些示例:

public class Main {
    public static void main(String[] args) {
        // 創建鏈表 1 -> 2 -> 3 -> 4 -> 5
        ListNode head = new ListNode(1);
        head.next = new ListNode(2);
        head.next.next = new ListNode(3);
        head.next.next.next = new ListNode(4);
        head.next.next.next.next = new ListNode(5);

        // 打印鏈表
        System.out.println("鏈表:");
        printList(head);

        // 添加元素 0 到鏈表頭部
        head = addElement(head, 0);
        System.out.println("添加元素 0 后的鏈表:");
        printList(head);

        // 刪除元素 3
        head = deleteElement(head, 3);
        System.out.println("刪除元素 3 后的鏈表:");
        printList(head);

        // 查找值為 4 的節點
        ListNode node = findElement(head, 4);
        if (node != null) {
            System.out.println("找到值為 4 的節點,值為:" + node.val);
        } else {
            System.out.println("未找到值為 4 的節點");
        }
    }

    // 在鏈表頭部添加元素
    public static ListNode addElement(ListNode head, int val) {
        ListNode newNode = new ListNode(val);
        newNode.next = head;
        return newNode;
    }

    // 刪除鏈表中指定值的節點
    public static ListNode deleteElement(ListNode head, int val) {
        if (head == null) {
            return null;
        }

        if (head.val == val) {
            return head.next;
        }

        ListNode current = head;
        while (current.next != null && current.next.val != val) {
            current = current.next;
        }

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

        return head;
    }

    // 打印鏈表
    public static void printList(ListNode head) {
        ListNode current = head;
        while (current != null) {
            System.out.print(current.val + " -> ");
            current = current.next;
        }
        System.out.println("null");
    }

    // 查找鏈表中指定值的節點
    public static ListNode findElement(ListNode head, int val) {
        ListNode current = head;
        while (current != null) {
            if (current.val == val) {
                return current;
            }
            current = current.next;
        }
        return null;
    }
}

這個示例展示了如何創建一個鏈表,對其進行操作(如添加、刪除和查找元素),并打印鏈表。你可以根據需要修改和擴展這個示例。

0
灵山县| 镇平县| 石台县| 乌什县| 赞皇县| 阳城县| 栖霞市| 海盐县| 石柱| 商城县| 成安县| 双峰县| 高平市| 兰考县| 木里| 桐城市| 蓬溪县| 宁城县| 鄱阳县| 大冶市| 临沧市| 黄平县| 黄大仙区| 通化县| 河间市| 新绛县| 饶河县| 东宁县| 南宫市| 共和县| 得荣县| 马尔康县| 平远县| 蛟河市| 霍城县| 格尔木市| 灌阳县| 康平县| 城固县| 诸暨市| 新龙县|