[LeetCode] Reverse Linked List

Reverse Linked List

Reverse a singly linked list.

解题思路:

链表翻转。没有什么很大的难度,画个图分析一下即可。单链表的技巧就是申请一个伪头结点,,然后在最后的时候删除即可,这样能够保证中间代码不需要考虑不同的情况。

/** * 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* resultHead=new ListNode(0);ListNode* p=head, *q;while(p!=NULL){q=p->next;p->next=resultHead->next;resultHead->next=p;p=q;}p=resultHead;resultHead=resultHead->next;delete p;return resultHead;}};

不要惧怕黑暗,人间没有永恒的夜晚;不要担心严寒,

[LeetCode] Reverse Linked List

相关文章:

你感兴趣的文章:

标签云: