没啥好说的,顺着逻辑写就行
# class ListNode: # def __init__(self, x): # self.val = x # self.next = None # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param head ListNode类 # @return ListNode类 # class Solution: def oddEvenList(self , head ): # write code here if not head or not head.next: return head dummy_odd = ListNode(0) dummy_even = ListNode(0) odd = head even = odd.next dummy_odd.next = odd dummy_even.next = even def display(node): while node: print(node.val) node = node.next while even: next_odd = even.next next_even = None if even.next: next_even = even.next.next odd.next = next_odd even.next = next_even if next_odd: odd = next_odd even = next_even odd.next = dummy_even.next return dummy_odd.next