题解 | #链表的奇偶重排#
链表的奇偶重排
http://www.nowcoder.com/practice/02bf49ea45cd486daa031614f9bd6fc3
import java.util.*;
/*
- public class ListNode {
- int val;
- ListNode next = null;
- public ListNode(int val) {
-
this.val = val;
- }
- } */
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param head ListNode类 * @return ListNode类 */ public static ListNode oddEvenList(ListNode head) { // write code here List jiList = new ArrayList<>(); List ouList = new ArrayList<>(); int nowWei = 1; while (head != null) { if (nowWei % 2 == 0) { ouList.add(head); } else { jiList.add(head); } head = head.next; nowWei++; }
ListNode ya = new ListNode(-1);
head = ya;
for (ListNode temp : jiList) {
head.next = new ListNode(temp.val);
head = head.next;
}
for (ListNode temp : ouList) {
head.next = new ListNode(temp.val);
head = head.next;
}
return ya.next;
}
}