Leetcode 143 重排鍊錶

2021-09-01 09:20:11 字數 730 閱讀 4365

給定乙個單鏈表 l:l0→l1→…→l

n-1→ln ,

將其重新排列後變為: l0→l

n→l1→l

n-1→l2→l

n-2→…

你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。

解題思路;

前一半[0,(size+1)/2)的結點位址進入佇列,先進先出,後一半[(size+1)/2,size)的結點入棧,先進先出。然後逐個取出就是題意中的順序,注意最後乙個結點取出後,它的next指標指向null,否者就有環。

LeetCode 143 重排鍊錶

給定乙個單鏈表 l l0 l1 l n 1 ln 將其重新排列後變為 l0 l n l1 l n 1 l2 l n 2 你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。解題思路 首先想到的是找到要插入的元素,壓入堆疊,彈出時剛好為期望的順序,然後插入對應位置。再換一種思路,找到待插入節...

leetcode143 重排鍊錶

給定乙個單鏈表 l l0 l1 ln 1 ln 將其重新排列後變為 l0 ln l1 ln 1 l2 ln 2 你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。示例 1 給定鍊錶 1 2 3 4,重新排列為 1 4 2 3.示例 2 給定鍊錶 1 2 3 4 5,重新排列為 1 5 2...

Leetcode 143 重排鍊錶

給定乙個單鏈表 l l0 l1 l n 1 ln 將其重新排列後變為 l0 l n l1 l n 1 l2 l n 2 你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。示例 1 給定鍊錶 1 2 3 4,重新排列為 1 4 2 3.示例 2 給定鍊錶 1 2 3 4 5,重新排列為 1...