码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode 206 反转链表

时间:2018-04-29 01:12:48      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:net   ==   for   turn   bsp   col   list   details   ever   

不会。

 

递归。有点慢,18ms。

/**
 * 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) {
        
        if(head==NULL||head->next==NULL){
            return head;
        }
        
        ListNode * p=reverseList(head->next);
        head->next->next=head;
        head->next=NULL;
        return p;
        
            
    }
};

来源:https://blog.csdn.net/geekmanong/article/details/51097196

 

ListNode* reverseList(ListNode* head) {
    ListNode* newHead = NULL;
    while (head) {
        ListNode* nextNode = head->next;
        head->next = newHead;
        newHead = head;
        head = nextNode;
    }
    return newHead;
}

9ms,来自:https://blog.csdn.net/NoMasp/article/details/50514593

 快了一倍?

 

 

class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        if (head == nullptr) {
            return nullptr;
        }
        
        ListNode *pre = nullptr, *next = nullptr;
        
        while (head != nullptr) {
            next = head->next;
            head->next = pre;
            pre  = head;
            head = next;
        }
        
        return pre;
    }
};

最快的。7ms?

 

leetcode 206 反转链表

标签:net   ==   for   turn   bsp   col   list   details   ever   

原文地址:https://www.cnblogs.com/azureice/p/leetcode206.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!