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 ...