LeetCode 206. Reverse Linked List *****三指针 (pre,cur,next)
来源:互联网 发布:如果希特勒赢了 知乎 编辑:程序博客网 时间:2024/06/10 13:15
- 题目
- 题意
- 注意
- 思路
- 递归实现
- 题目
题目
Reverse a singly linked list.
题意
反转一个单链表
e.g:
1->2->3->4->5->NULL
NULL<-1<-2<-3<-4<-5
注意
链表的题目一般不允许修改链表内的内容,只能修改指向
思路
需要三个指针,分别保存之前,当前,之后的信息。
1.更改cur的next指向
2.之后pre移动到cur的位置,cur移动到next的位置,next移动到cur的next
/** * 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) return NULL; ListNode* pre = NULL; ListNode* cur = head; //ListNode* next = cur->next; //对于链表访问的某个域,保证不为空 //这样是危险的。当head为空的情况下 //只有当cur存在的情况下才求取next while(cur != NULL) { ListNode* next = cur->next; cur->next = pre; pre = cur; cur = next; //next = cur->next; } //退出循环之后,cur一定是指向NULL的,pre指向以前链表中的最后一个元素 return pre; }};
\
递归实现
class Solution {public: ListNode* reverseList(ListNode* head) { if(head == NULL) return NULL; if(head->next == NULL) return head; ListNode* node = reverseList(head->next); head->next->next = head; head->next = NULL; return node; }};
阅读全文
1 0
- LeetCode 206. Reverse Linked List *****三指针 (pre,cur,next)
- 【LeetCode】206.reverse linked list
- [leetcode] 206.Reverse Linked List
- [leetcode] 206. Reverse Linked List
- 206. Reverse Linked List LeetCode
- leetCode 206. Reverse Linked List
- LeetCode 206. Reverse Linked List
- LeetCode 206. Reverse Linked List
- [LeetCode]206. Reverse Linked List
- 【LeetCode】206. Reverse Linked List
- LeetCode 206. Reverse Linked List
- leetcode 206. Reverse Linked List
- 【LeetCode】206. Reverse Linked List
- leetcode 206. Reverse Linked List
- LeetCode *** 206. Reverse Linked List
- LeetCode 206. Reverse Linked List
- 【leetcode】206. Reverse Linked List
- [LeetCode]206. Reverse Linked List
- POJ1836
- Swiper的使用心得
- 百度IFE学习笔记(一)js二维数组排序
- Eclipse-web3.0里使用注解上传文件。文本
- Java 与 php
- LeetCode 206. Reverse Linked List *****三指针 (pre,cur,next)
- js基本算法--冒泡排序法、快速排序法、插入排序法、二分查找法(递归、非递归)
- 51nod 1154 回文串划分(dp)
- hdoj1016(深度遍历)
- spring事务
- Find them, Catch them(POJ-1703)
- PHP开发之字符串长度以及字符串子串截取相关函数总结
- 重拾Hibernate框架——实体类、主键生成策略、session绑定本地线程
- TensorFlow学习笔记(三):深层神经网络