LeetCode 206. Reverse Linked List
来源:互联网 发布:sql数据库删除 编辑:程序博客网 时间:2024/06/10 19:02
问题
Reverse a singly linked list.
public class Solution206 { public static void main(String args[]){ Solution206 solution206 = new Solution206(); ListNode listNode1 = new ListNode(1); ListNode listNode2 = new ListNode(2); ListNode listNode3 = new ListNode(3); ListNode listNode4 = new ListNode(4); listNode1.next = listNode2; listNode2.next = listNode3; listNode3.next = listNode4; ListNode head = solution206.reverseList(listNode1); System.out.println(head.val); System.out.println(head.next.val); System.out.println(head.next.next.val); System.out.println(head.next.next.next.val); } /** * 创建一个新的链表,是倒序的 */ public ListNode reverseList(ListNode head) { if(head==null || head.next==null){ return head; } int length=0; ListNode currentNode = head; while(true){ if(currentNode.next!=null){ currentNode = currentNode.next; length++; }else{ break; } } ListNode newNode = new ListNode(currentNode.val); ListNode firstNode = newNode; for(int i=0;i<length;i++){ int value = getNodeValue(head, length-i); newNode.next = new ListNode(value); newNode = newNode.next; } return firstNode; } public int getNodeValue(ListNode head, int n) { for(int i=1;i<n;i++){ head = head.next; } return head.val; }// /**// * 解析答案// */// public ListNode reverseList(ListNode head) {//// ListNode pre = null;// ListNode current = head;// while(current!=null){// ListNode next_temp = current.next;// current.next = pre;// pre = current;// current = next_temp;// }// return pre;// } public static class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }}
0 0
- 【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
- #leetcode#206. Reverse Linked List
- 深入Java集合类
- 16进制颜色数值查询表小结
- centos 6.5 清除yum源方式
- 打开Android Studio时出现No JVM installaton found a 64-bit jdk
- Java虚拟机运行时内存区域
- LeetCode 206. Reverse Linked List
- teamviewer在mac系统上不能正常使用。
- 无人机,diyDrones,3dr,pixhawk,Chris Anderson, 这几个概念是什么关系?
- 高级SQL优化(二) ——《12年资深DBA教你Oracle开发与优化——性能优化部分》
- BaseAdapter实现不存储列表选项的 ListView
- java 英文词频统计
- C#事件与委托详解【精华 多看看】
- Human-level concept learning翻译(1)
- toString() unavailable - no suspended threads