Leetcode题143、重排链表(Python题解)

问题:

Leetcode题143、重排链表(Python题解)_第1张图片

题目来源:力扣(LeetCode)

leetcode143.重排链表

难度:中等

分析:
这道题是链表题目训练题的合集吧哈哈,常见的链表操作都有体现。
方法一:将链表节点用数组保存下来,然后按照题目顺序重新连接起来。注意存的是节点,而不是链表的值,因为题目要求不能只改变链表值。
方法二:先寻找链表中点,再对链表后半部进行翻转,然后合并链表。好家伙!一道顶三道,寻找链表中点,翻转链表,合并链表,打包放送。

解决方法:
1:列表存节点+双指针

#列表存储
class Solution:
    def reorderList(self, head: ListNode) -> None:
        """
        Do not return anything, modify head in-place instead.
        """
        if not head: return
        nodes = [

你可能感兴趣的:(leetcode,链表,算法,leetcode,数据结构)