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 ListNode oddEvenList (ListNode head) { // write code here if (head == null) return head; ListNode dummy = new ListNode(-1); int i = 0; ListNode last = head; ListNode cur = head; ListNode dual = dummy; while (cur != null) { if ( i % 2 == 0 ) { last = cur; i++; cur = cur.next; } else { dual.next = cur; last.next = cur.next; cur.next = null; i++; cur = last.next; dual = dual.next; } } last.next = dummy.next; return head; } }
最近开题0.o
用一个dummy为头节点,重新排偶位置的节点