LeetCodeは24のフリップリストを提供することを指します

  • 分析

     アイデアは非常に単純です。ヘッド挿入方法です。インタビューで遭遇しました。注意してください。C++プログラマーはメモリリークの問題を抱えてはいけません。

  • コード
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        ListNode* reverseHead = new ListNode();
        ListNode* temp;
        while(nullptr != head){
            temp = reverseHead -> next;
            reverseHead -> next = head;
            head = head -> next;            
            reverseHead -> next -> next = temp;
        }

        head = reverseHead -> next;
        delete reverseHead;//注意内存泄漏
        return head;
    }
};

 

おすすめ

転載: blog.csdn.net/xiaoan08133192/article/details/108837342