leetCode--reorder-list
来源:互联网 发布:提醒喝水的软件 编辑:程序博客网 时间:2024/06/18 14:09
Given a singly linked list L: L 0→L 1→…→L n-1→L n,
reorder it to: L 0→L n →L 1→L n-1→L 2→L n-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}.
/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */public class Solution { public void reorderList(ListNode head) { if(head==null||head.next==null){ return; } ListNode slow=head; ListNode fast=head.next; //找到中点 while(fast!=null&&fast.next!=null){ slow=slow.next; fast=fast.next.next; } ListNode after=slow.next; slow.next=null; ListNode pre=null; //后半部分转置 while(after!=null){ ListNode tmp=after.next; after.next=pre; pre=after; after=tmp; } //合并 ListNode first=head; after=pre; while(first!=null&&after!=null){ ListNode firstTmp=first.next; ListNode afterTmp=after.next; first.next=after; first=firstTmp; after.next=first; after=afterTmp; } }}
阅读全文
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)
- redis-mac安装与jedis链接测试
- 开放mysql远程连接
- word2vec简单介绍
- Ubuntu/Windows下安装Kinect+Openni
- chattr与lsattr指令
- leetCode--reorder-list
- Spring:源码解读Spring IOC原理
- 余华:鲁迅是我这辈子唯一讨厌过的作家
- redis初体验
- CSS代码缩写
- iOS动态性(二)可复用而且高度解耦的用户统计埋点实现(Method Swizzling(Hook))
- 利用vgg-16登上kaggle Invasive Species Monitoring图像识别比赛五十强
- golang中结构体转成xml格式
- 高性能设置UIView的圆角以及圆角大小