没啥好说的,顺着逻辑写就行
# 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



京公网安备 11010502036488号