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

溫馨提示×

java怎么實現單鏈表的反轉

小億
50
2023-12-06 19:21:05
欄目: 編程語言

要實現單鏈表的反轉,可以按照以下步驟進行:

  1. 創建一個新的鏈表,作為反轉后的鏈表。
  2. 遍歷原鏈表,將每個節點插入到新鏈表的頭部。
  3. 返回新鏈表作為反轉后的鏈表。

以下是用Java實現單鏈表反轉的示例代碼:

class ListNode {
    int val;
    ListNode next;

    ListNode(int val) {
        this.val = val;
        this.next = null;
    }
}

public class LinkedListReverse {
    public static ListNode reverse(ListNode head) {
        ListNode newHead = null;
        while (head != null) {
            ListNode nextNode = head.next;
            head.next = newHead;
            newHead = head;
            head = nextNode;
        }
        return newHead;
    }

    public static void main(String[] args) {
        // 創建一個示例鏈表 1->2->3->4->5
        ListNode head = new ListNode(1);
        ListNode second = new ListNode(2);
        ListNode third = new ListNode(3);
        ListNode fourth = new ListNode(4);
        ListNode fifth = new ListNode(5);

        head.next = second;
        second.next = third;
        third.next = fourth;
        fourth.next = fifth;

        // 反轉鏈表
        ListNode newHead = reverse(head);

        // 打印反轉后的鏈表值
        ListNode currentNode = newHead;
        while (currentNode != null) {
            System.out.print(currentNode.val + " ");
            currentNode = currentNode.next;
        }
        // 輸出結果: 5 4 3 2 1
    }
}

在上述示例代碼中,我們創建了一個單鏈表,并使用 reverse 方法將其反轉。最后,我們遍歷反轉后的鏈表,并打印每個節點的值。輸出結果為 5 4 3 2 1,表示鏈表已成功反轉。

0
喀喇| 枝江市| 石柱| 芦山县| 连云港市| 灵寿县| 大新县| 广德县| 新源县| 桐城市| 施秉县| 桃园县| 上犹县| 施甸县| 台中市| 山西省| 松阳县| 龙井市| 旺苍县| 韶山市| 临沭县| 台前县| 平湖市| 乡宁县| 成安县| 本溪| 灵山县| 浦县| 邳州市| 秀山| 乐安县| 林西县| 红原县| 泊头市| 志丹县| 江安县| 共和县| 盘锦市| 双桥区| 临夏市| 临城县|