Leetcode-92. Reverse Linked List II
来源:互联网 发布:知行理工初始密码 编辑:程序博客网 时间:2024/04/19 04:22
前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发CSDN,mcf171专栏。
博客链接:mcf171的博客
——————————————————————————————
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.
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */public class Solution { public ListNode reverseBetween(ListNode head, int m, int n) { if( m == n ) return head; ListNode headNode = new ListNode(0); ListNode changeNode = headNode; changeNode.next = head; ListNode searchNode = head; int times = m; if( m != 1){ while( times > 1){ changeNode = changeNode.next; searchNode = searchNode.next; times --; } } if( n - m == 1){ ListNode firstNode = searchNode; ListNode lastNode = searchNode.next; firstNode.next = lastNode.next; lastNode.next = firstNode; changeNode.next = lastNode; }else{ times = n - m; ListNode nextNode = searchNode.next,lastNode = null,firstNode = searchNode; while( times >= 1){ ListNode preNode = searchNode; searchNode = nextNode; nextNode = nextNode.next; firstNode.next = nextNode; searchNode.next = preNode; lastNode = searchNode; times--; } changeNode.next = lastNode; } return headNode.next; }}
0 0
- [LeetCode]206. Reverse Linked List&92. Reverse Linked List II
- LeetCode 206. Reverse Linked List && 92. Reverse Linked List II
- 92. Reverse Linked List II leetcode list
- [LeetCode]92.Reverse Linked List II
- LeetCode 92. Reverse Linked List II
- [Leetcode] 92. Reverse Linked List II
- LeetCode --- 92. Reverse Linked List II
- [leetcode] 92.Reverse Linked List II
- [leetcode] 92. Reverse Linked List II
- 92. Reverse Linked List II LeetCode
- leetcode 92. Reverse Linked List II
- Leetcode 92. Reverse Linked List II
- LeetCode 92. Reverse Linked List II
- [LeetCode] 92. Reverse Linked List II
- LeetCode *** 92. Reverse Linked List II
- Leetcode 92. Reverse Linked List II
- [Leetcode] 92. Reverse Linked List II
- 【LeetCode】92. Reverse Linked List II
- 软件开发职位中英对照表
- UOJ#127. 【NOI2015】程序自动分析
- VLC 推流的简单设置
- C++中,两个头文件互相引用怎么办
- load Sdk stackflow.md
- Leetcode-92. Reverse Linked List II
- HDU5037 贪心
- 深入理解HTTP Session
- unity Physics.Raycast 函数 LayerMask用法测试
- delphi label 背景颜色设置!
- 在SpringMVC中使用@RequestBody注解处理json时,报出HTTP Status 415的解决方案
- 你必须了解的Session的本质
- 数据库基本语法
- Winform 数据库连接app.config文件配置 数据库连接字符串