码迷,mamicode.com
首页 > 其他好文 > 详细

Problem Reorder List

时间:2014-07-07 16:41:56      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   color   strong   for   

Problem Description:

Given a singly linked list LL0→L1→…→Ln-1→Ln,

reorder it to: L0→LnL1→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}.

 

Solution: 
 1 public void reorderList(ListNode head) {
 2         int length = 0;
 3         ListNode p = head;
 4         List<ListNode> list = new ArrayList<ListNode>();
 5         while (p != null) {
 6             length++;
 7             list.add(p);
 8             p = p.next;
 9         }
10         int i = 0;
11         p = null;
12         while (i <= (length - 1 - i)) {
13             if (p != null) {
14                 p.next = list.get(i);
15             }
16             if (i != length -1 -i) {
17                 list.get(i).next = list.get(length - 1-i);
18                 p = list.get(length-1-i);
19                 p.next = null;
20             } else {
21                 list.get(i).next = null;
22             }
23 
24             i++;
25         }
26     }

 

Problem Reorder List,布布扣,bubuko.com

Problem Reorder List

标签:des   style   blog   color   strong   for   

原文地址:http://www.cnblogs.com/liew/p/3815020.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!