内容简介:Reverse a singly linked list.Example:Follow up:
Reverse a singly linked list.
Example:
Input: 1->2->3->4->5->NULL Output: 5->4->3->2->1->NULL
Follow up:
A linked list can be reversed either iteratively or recursively. Could you implement both?
反转单链表,看到我好几年前通过的代码居然是用List遍历保存之后再倒序遍历反转,然而还RE了好几次。。。往事突然浮现在脑海,没忍住又重写了一下。
耗时0ms
class Solution { public ListNode reverseList(ListNode head) { ListNode cur = head, prev = null, temp = null; while (cur != null) { temp = cur.next; cur.next = prev; prev = cur; cur = temp; } return prev; } }
以前的代码是这样的(耗时464ms):
public class Solution { public ListNode reverseList(ListNode head) { if(head == null || head.next == null) return head; ArrayList<Integer> list = new ArrayList<Integer>(); ListNode p = head; while(p!=null) { list.add(p.val); p = p.next; } ListNode q = head; for(int i=list.size()-1; i>=0; i--) { q.val = list.get(i); q = q.next; } return head; } }
以上所述就是小编给大家介绍的《LeetCode - 206. Reverse Linked List》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- LeetCode - 206. Reverse Linked List
- 数据结构与算法 | Leetcode 206:Reverse Linked List
- Leetcode PHP题解--D78 206. Reverse Linked List
- LeetCode 之 JavaScript 解答第206题 —— 反转链表(Reverse Linked List)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
反应式设计模式
Roland Kuhn、Brian Hanafee、Jamie Allen / 何品、邱嘉和、王石冲、林炜翔审校 / 清华大学出版社 / 2019-1-1 / 98.00 元
《反应式设计模式》介绍反应式应用程序设计的原则、模式和经典实践,讲述如何用断路器模式将运行缓慢的组件与其他组件隔开、如何用事务序列(Saga)模式实现多阶段事务以及如何通过分片模式来划分数据集,分析如何保持源代码的可读性以及系统的可测试性(即使在存在许多潜在交互和失败点的情况下)。 主要内容 ? “反应式宣言”指南 ? 流量控制、有界一致性、容错等模式 ? 得之不易的关于“什么行不通”的经验 ? ......一起来看看 《反应式设计模式》 这本书的介绍吧!