日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

35. Leetcode 328. 奇偶链表 (链表-双指针)

發布時間:2025/4/5 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 35. Leetcode 328. 奇偶链表 (链表-双指针) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定單鏈表的頭節點?head?,將所有索引為奇數的節點和索引為偶數的節點分別組合在一起,然后返回重新排序的列表。第一個節點的索引被認為是 奇數 , 第二個節點的索引為?偶數 ,以此類推。請注意,偶數組和奇數組內部的相對順序應該與輸入時保持一致。你必須在?O(1)?的額外空間復雜度和?O(n)?的時間復雜度下解決這個問題。示例 1:輸入: head = [1,2,3,4,5] 輸出:?[1,3,5,2,4]示例 2:輸入: head = [2,1,3,5,6,4,7] 輸出: [2,3,6,7,1,5,4]思路:給了我們一個鏈表,讓我們分開奇偶節點,所有奇節點在前,偶節點在后。 設定兩個虛擬節點,dummyHead1 用來保存奇節點,dummyHead2 來保存偶節點; 遍歷整個原始鏈表,將奇節點放于dummyHead1 中,其余的放置在dummyHead2 中 遍歷結束后,將dummyHead2 插入到dummyHead1 后面。# 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:odd = dummpy1 = ListNode(0)even = dummpy2 = ListNode(0)while head:odd.next = headodd = odd.nexthead = head.nextif head:even.next = headeven = even.nexthead = head.nexteven.next = Noneodd.next = dummpy2.nextreturn dummpy1.next

總結

以上是生活随笔為你收集整理的35. Leetcode 328. 奇偶链表 (链表-双指针)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。