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

溫馨提示×

如何在C++中逆轉單鏈表

c++
小樊
83
2024-07-16 20:14:52
欄目: 編程語言

以下是在C++中逆轉單鏈表的示例代碼:

#include <iostream>

struct Node {
    int data;
    Node* next;
    
    Node(int val) : data(val), next(nullptr) {}
};

Node* reverseLinkedList(Node* head) {
    Node* prev = nullptr;
    Node* current = head;
    Node* next = nullptr;
    
    while (current != nullptr) {
        next = current->next;
        current->next = prev;
        prev = current;
        current = next;
    }
    
    return prev;
}

void printLinkedList(Node* node) {
    while (node != nullptr) {
        std::cout << node->data << " ";
        node = node->next;
    }
    std::cout << std::endl;
}

int main() {
    Node* head = new Node(1);
    head->next = new Node(2);
    head->next->next = new Node(3);

    std::cout << "Original Linked List: ";
    printLinkedList(head);

    head = reverseLinkedList(head);

    std::cout << "Reversed Linked List: ";
    printLinkedList(head);

    return 0;
}

在這個示例中,我們定義了一個簡單的Node結構來表示鏈表的節點,并實現了reverseLinkedList函數來反轉鏈表。我們還實現了printLinkedList函數來打印鏈表的內容。在main函數中,我們創建了一個包含三個節點的鏈表,并打印出原始鏈表和反轉后的鏈表。

0
潜江市| 九龙城区| 米泉市| 崇文区| 冀州市| 屯留县| 仁布县| 伊春市| 四会市| 山东| 溧阳市| 容城县| 怀化市| 保靖县| 平乐县| 康乐县| 称多县| 井陉县| 平罗县| 图木舒克市| 临泉县| 敦化市| 确山县| 平度市| 新乡市| 乌拉特后旗| 大渡口区| 曲阜市| 林西县| 湘阴县| 温州市| 察哈| 南康市| 银川市| 阿拉善左旗| 精河县| 嵊州市| 宾阳县| 卢龙县| 诏安县| 开平市|