328 奇偶鍊錶

2021-10-10 13:00:54 字數 1205 閱讀 6508

leetcode: 328. 奇偶鍊錶

不算難 >>畫圖理清節點 next 的 轉移關係就好

雙指標使用了幾個 listnode 臨時變數 >> 應該算是 o(1

)o(1)

o(1)

空間吧,一次遍歷 >> 算是 o(n

)o(n)

o(n)

時間複雜度吧

分離節點後合併 (**簡潔了不少, 思路更清晰)

雙指標

slow 記錄著奇數字的最後乙個節點

fasth 一直記錄著偶數字的第乙個節點 >> 用來被 slo

w.ne

xt=f

asth

slow.next = fasth

slow.n

ext=

fast

h 接上

fastt 記錄著偶數字的最後乙個節點

public listnode oddevenlist

(listnode head)

// 說明是奇數個節點

分離節點後合併

思路差不多, 但是這段**寫的比我的簡潔了不少

evenhead >> 儲存著 head.next >> 即是第二個位置(偶數字的第乙個)

然後通過 odd、even 互相跑到對方的 next 節點 進行位置的更新 (奇數字的next就是偶數字, 偶數字的next就是奇數字)

最後再管 奇鍊錶 、偶鍊錶的合併操作 >> odd

328 奇偶鍊錶

給定乙個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裡的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。請嘗試使用原地演算法完成。你的演算法的空間複雜度應為 o 1 時間複雜度應為 o nodes nodes 為節點總數。示例 1 輸入 1 2 3 4 5 null輸...

328 奇偶鍊錶

給定乙個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裡的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。請嘗試使用原地演算法完成。你的演算法的空間複雜度應為 o 1 時間複雜度應為 o nodes nodes 為節點總數。示例 1 輸入 1 2 3 4 5 null ...

328 奇偶鍊錶

題目描述 給定乙個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裡的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。請嘗試使用原地演算法完成。你的演算法的空間複雜度應為 o 1 時間複雜度應為 o nodes nodes 為節點總數。示例 1 輸入 1 2 3 4 5 ...