鍊錶劃分 LintCode

2021-07-29 11:06:41 字數 570 閱讀 4814

描述:

給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。

你應該保留兩部分內煉表節點原有的相對順序。

樣例:給定鍊錶 1->4->3->2->5->2->null

,並且 x=3

返回1->2->2->4->3->5->null

思路:這個題我們可以建立兩個新的鍊錶left和right;

遍歷給定鍊錶,判斷每個節點val的值,把小於x的節點用尾插法插入到left裡,把大於等於x的節點用尾插法插入到right裡,

最後將right接在left後面就好了~

/**

* definition of listnode

* class listnode

* }*/class solution

else

head=head->next;

}right->next=null;

left->next=rightdummy->next;

return leftdummy->next;

}};

LintCode 鍊錶劃分

容易 鍊錶劃分 檢視執行結果 29 通過 給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。你應該保留兩部分內煉表節點原有的相對順序。您在真實的面試中是否遇到過這個題?yes 樣例 給定鍊錶 1 4 3 2 5 2 null,並且 x 3 返回 1 2 2 4 3 5 n...

LintCode 鍊錶劃分

題目描述 給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。你應該保留兩部分內煉表節點原有的相對順序。樣例 給定鍊錶 1 4 3 2 5 2 null,並且 x 3 返回 1 2 2 4 3 5 null 思路分析 題意搞懂了就很簡單了。ac definition of ...

Lintcode 鍊錶劃分

給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。你應該保留兩部分內煉表節點原有的相對順序。解釋 本道題目我的解法是先遍歷鍊錶,對於小於x的節點資料域壓入pre陣列中,其餘節點資料域壓入last陣列,然後將pre和last分別順序不變壓入result陣列中,最後再遍歷鍊錶...