[LeetCode] Reorder List
来源:互联网 发布:world of warship mac 编辑:程序博客网 时间:2024/06/05 19:06
Given a singly linked list L: L0→L1→…→Ln-1→Ln,
reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…
You must do this in-place without altering the nodes' values.
For example,
Given {1,2,3,4}
, reorder it to {1,4,2,3}
LeetCode: https://oj.leetcode.com/problems/reorder-list/
题解:本题要求对一个链表进行重新链接,可以通过将节点保存在一个堆栈和队列中的方法类操作;但Java基础类库里面提供Deque(双向链表实现),所以我们可以通过以下方式实现:
public class Solution { public void reorderList(ListNode head) { if(head == null || head.next == null)return ;Deque deque = new LinkedList<ListNode>();ListNode current = head;while(current != null){deque.addLast(current);current = current.next;}ListNode result = new ListNode(0);while(!deque.isEmpty()){result.next = (ListNode) deque.pollFirst();result = result.next;if(!deque.isEmpty()){result.next = (ListNode) deque.pollLast();result = result.next;}}result.next = null; }}
0 0
- [leetcode][list] Reorder List
- [leetcode][list] Reorder List
- Leetcode: Reorder List
- [LeetCode] Reorder List
- LeetCode题解:Reorder List
- Leetcode: Reorder List
- LeetCode:Reorder List
- leetcode之Reorder List
- Leetcode: Reorder List
- [LeetCode]Reorder List
- [LeetCode] Reorder List
- leetcode Reorder List
- LeetCode | Reorder List
- LeetCode Reorder List
- LeetCode 之 Reorder List
- Leetcode: Reorder List
- LeetCode OJ:Reorder List
- Reorder List (LeetCode)
- 如何让VM虚拟机全屏
- Oracle 中的JOIN
- 数据结构 第一章 学习感受与总结
- 深入理解嵌入式开发之系统开发篇全覆盖(MC9S12单片机、CAN技术介绍)
- JavaScript - Array对象的使用 及 数组排序 sort
- [LeetCode] Reorder List
- java字节流和字符流的区别
- OpenCV基础篇之绘图及RNG随机数对象
- 解决异常:Permission Denial: opening provider 隐藏的android:exported属性的含义
- OpenCV基础篇之像素访问
- Linux 浮点运算及case命令
- 字节流和字符流的直观说明
- 使用Pspice进行电路仿真
- OpenCV基础篇之图片叠加