92. Reverse Linked List II
来源:互联网 发布:月薪5万的程序员 编辑:程序博客网 时间:2024/05/22 00:41
Reverse a linked list from position m to n. Do it in-place and in one-pass.
For example:
Given 1->2->3->4->5->NULL
, m = 2 and n = 4,
return 1->4->3->2->5->NULL
.
Note:
Given m, n satisfy the following condition:
1 ≤ m ≤ n ≤ length of list.
1.我的答案
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:ListNode* reverseBetween(ListNode* head, int m, int n) { ListNode* r = head, *p = NULL, * q = NULL, *temp = NULL; if(m == n) return head; int mm = m; int i = 1; while(i < m-1){ r = r -> next; i++; } if(m == 1) p = r; else p = r-> next; q = p -> next; while(mm < n){ temp = q->next; q->next = p; p = q; q = temp; mm++; } if(m == 1){ head = p; temp = r; } else{ temp = r -> next; r->next = p; } temp -> next = q; return head;}};
2,别人的答案
ListNode *reverseBetween(ListNode *head, int m, int n) { if(m==n)return head; n-=m; ListNode prehead(0); prehead.next=head; ListNode* pre=&prehead; while(--m)pre=pre->next; ListNode* pstart=pre->next; while(n--) { ListNode *p=pstart->next; pstart->next=p->next; p->next=pre->next; pre->next=p; } return prehead.next;}
0 0
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- 92. Reverse Linked List II
- SQL之更新操作及事务控制
- php常用API接口收集
- unity —脚本优化— 消息处理系统
- 编写高效的anroid代码
- Java Web技术总结(二):Java Web Servlet开发流程图
- 92. Reverse Linked List II
- 2016传智WEB前端开发01期系列视频教程
- 2016传智WEB前端开发01期系列视频教程
- 2016传智WEB前端开发01期系列视频教程
- 2016传智WEB前端开发01期系列视频教程
- 总结Ant
- maven nexus私服搭建
- 聊聊纠结了大半天的qua数据上报不一致的问题------经验:1. 思路很重要;2.map的下标操作要当心
- 短信提醒 BroadcastReceiver