Leetcode 每日一题
题目链接: 328. 奇偶链表
难度: 中等
解题思路: 使用两个指针分别存储奇数项和偶数项,最后再将偶数项加在奇数项后面。
题解:

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def oddEvenList(self, head: ListNode) -> ListNode:
        if head == None:
            return head
        
        even_head = head.next
        odd_node = head
        even_node = even_head

        while even_node != None and even_node.next != None:
            odd_node.next = even_node.next
            odd_node = odd_node.next

            even_node.next = odd_node.next
            even_node = even_node.next

        odd_node.next = even_head
        return head