/**
* definition for singly-linked list.
* struct listnode
* };
/* 一: 要找到鍊錶的中間節點,然後把鍊錶分為兩個, 最關鍵的是不要忘記找到中間節點後,把鍊錶分為兩部分 middle->next = nulllptr
二: 如何反轉鍊錶
三:如何合併鍊錶
*/class solution
/*中間節點是 slow */
listnode * slow1 = slow->next;
slow->next = nullptr;
/*slow 是後面鍊錶的頭結點,需要反轉slow 鍊錶 然後合併*/
/*反轉鍊錶
*/listnode *pre = nullptr;
while(slow1 != nullptr)
/*合併鍊錶*/
while(pre != nullptr && head != nullptr)
}};
leetcode 重排鍊錶
1.使用快慢指標,將鍊錶分成前後兩個部分 listnode fast head listnode slow head while fast null fast.next null listnode mid slow solw指向中間節點 listnode first head listnode se...
重排鍊錶(LeetCode)
題目鏈結 給定乙個單鏈表 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,重新排列為 ...
Reorder List 鍊錶重排序
given a singly linked list l l0 l1 ln 1 ln,reorder it to l0 ln l1 ln 1 l2 ln 2 you must do this in place without altering the nodes values.for example...