LintCode 鍊錶劃分

2021-07-06 11:25:02 字數 1928 閱讀 8953

容易 鍊錶劃分 檢視執行結果

29% 通過

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

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

您在真實的面試中是否遇到過這個題? yes

樣例 給定鍊錶 1->4->3->2->5->2->null,並且 x=3

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

這裡對題目理解有點問題:

案例一:輸入1

->

4->

3->

2->

5->

2->

null, 3輸出1

->

4->

2->

2->

3->

5->

null

期望答案

1->

2->

2->

4->

3->

5->

null

案列二輸入

1->

2->

0->

3->

1->

2->

1->

0->

2->

2->

2->

1->

0->

2->

null, 2輸出0

->

0->

0->

1->

1->

1->

1->

2->

3->

2->

2->

2->

2->

2->

null

期望答案

1->

0->

1->

1->

0->

1->

0->

2->

3->

2->

2->

2->

2->

2->

null

/** * definition for listnode.

* public class listnode

* }*/public class solution

arraylist<

integer

> a =

new arraylist<

integer

>();

arraylist<

integer

> b =

new arraylist<

integer

>();

boolean find =

false;

while(head !=

null)elseelse

}else

head = head.next;}}

listnode re =

new listnode(0);

listnode ree = re;

for(int n : a)

insertionsortlist(ree);

if(find)

for(int n : b)

return ree.next;

}public static listnode insertionsortlist(listnode head) else

while(flag)

frist = frist.next;

second = second.next;

}while(frist !=

null);

frist = head.next;

second = head;

}return head;

}}

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的節點之前。你應該保留兩部分內煉表節點原有的相對順序。樣例 給定鍊錶 1 4 3 2 5 2 null 並且 x 3 返回1 2 2 4 3 5 null 思路 這個題我們可以建立兩個新的鍊錶left和right 遍歷給定鍊錶,...

Lintcode 鍊錶劃分

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