leetcode206 Reverse Linked List
来源:互联网 发布:linux 端口映射工具 编辑:程序博客网 时间:2024/04/29 01:57
Reverse Linked List
Reverse a singly linked list.
public class Solution {
public ListNode reverseList(ListNode head) {
if(head==null || head.next==null)
return head;
if(head.next.next==null){
head.next.next = head;
ListNode w = head.next;
head.next = null;
return w;
}
ListNode p = head;
ListNode q = p.next;
ListNode r = q.next;
p.next = null;
while(r.next!=null){
q.next = p;
p = q;
q = r;
r = r.next;
}
q.next = p;
r.next = q;
return r;
}
public static void show(ListNode head) {
while (head != null) {
System.out.println(head.val);
head = head.next;
}
}
public static void main(String[] args) {
int a[] = { 1,2,3,4,5};
ListNode head = new ListNode(a[0]);
ListNode p = head;
for (int i = 1; i < a.length; i++) {
ListNode q = new ListNode(a[i]);
p.next = q;
p = q;
}
head = new Solution().reverseList(head);
show(head);
}
}
class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
}
}
- Reverse Linked List LeetCode206
- LeetCode206:Reverse Linked List
- leetcode206 Reverse Linked List
- leetcode206 Reverse Linked List
- leetcode206. Reverse Linked List
- 【Leetcode206】 Reverse Linked List
- leetcode206. reverse linked list
- leetcode206~Reverse Linked List
- leetcode206. Reverse Linked List
- [leetcode206]Reverse Linked List
- Leetcode206. Reverse Linked List
- LeetCode206. Reverse Linked List I
- LeetCode206—Reverse Linked List
- Leetcode206. Reverse Linked List总结
- LeetCode206之Reverse Linked List Java题解
- LeetCode206——Reverse Linked List 反转链表
- leetcode206/92---Reverse Linked List I/II(反转链表)
- Single linked list reverse
- 第6周项目1 - 建立顺序栈算法库
- 初学NPOI
- 学习计划
- 深入理解按位异或运算符
- iOS开发分分钟搞定C语言 —— 进制
- leetcode206 Reverse Linked List
- Allods IP
- QT5 学习之路25---画刷和画笔
- 删除多级文件夹的程序,很好用
- 堆和栈深层理解
- 【RMQ问题】poj 3368 Frequent values
- 黑马程序员—String、StringBuffer、StringBuilder
- AOP术语
- Java复习笔记—面向对象2