leetcode題目 328 奇偶鍊錶

2021-10-03 02:03:29 字數 957 閱讀 7842

給定乙個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裡的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。

請嘗試使用原地演算法完成。你的演算法的空間複雜度應為 o(1),時間複雜度應為 o(nodes),nodes 為節點總數。

說明:1、應當保持奇數節點和偶數節點的相對順序。

2、鍊錶的第乙個節點視為奇數節點,第二個節點視為偶數節點,以此類推。

示例 1:

輸入: 1->2->3->4->5->null

輸出: 1->3->5->2->4->null

示例 2:

輸入: 2->1->3->5->6->4->7->null

輸出: 2->3->6->7->1->5->4->null

我們分別儲存奇偶鍊錶的尾節點和偶鍊錶的頭節點,然後每次把奇偶節點加入奇偶鍊錶尾節點的後面,最後再把奇鍊錶的尾節點和偶鍊錶的頭節點連線上。

public

class

problem328

}// 傳入陣列,生成鍊錶(輔助測試用)

public listnode createlist

(int

num)

return res;

}public listnode oddevenlist

(listnode head)

odd.next = evenhead;

return head;

}public

static

void

main

(string[

] args)

; listnode node=pro.

oddevenlist

(pro.

createlist

(nums));

while

(node!=null)

}}

LeetCode 奇偶鍊錶 328

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

LeetCode 328 奇偶鍊錶

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

LeetCode 328 奇偶鍊錶

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