描述:
給定乙個單鏈表和數值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陣列中,最後再遍歷鍊錶...