Leetcode 每日一题 题目链接:143. 重排链表 解题思路: 将链表转化为线性表存储,然后通过下标进行重排。 题解:
class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next class Solution: def reorderList(self, head: ListNode) -> None: """ Do not return anything, modify head in-place instead. """ if head != None: node_list = [] node = head while node != None: node_list.append(node) node = node.next node = head for i in range(int(len(node_list) - 1)): if i % 2 == 0: node.next = node_list[-(int(i/2) + 1)] else: node.next = node_list[int(i/2 + 1)] node = node.next node.next = None