
做链表的一些看起来很乱的题目:
那就将这个链表分割成两部分,试着同时操作两个链表再拼起来。
# 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 is None or head.next is None:
return head
enevhead=head.next
odd,enev=head,enevhead
while enev and enev.next:
odd.next=enev.next
odd=odd.next
enev.next=odd.next
enev=enev.next
odd.next=enevhead
return head
本文解析了一种复杂链表问题,通过实例演示如何将单链表分为奇数节点和偶数节点两部分,并实现在不改变结构的前提下进行同步操作和重新连接。适合理解链表并发操作的高级算法题解。
539

被折叠的 条评论
为什么被折叠?



