lintcode 鍊錶 刪除鍊錶中的元素

2021-08-04 17:12:22 字數 593 閱讀 2394

刪除鍊錶中等於給定值val的所有節點。

給出鍊錶 1->2->3->3->4->5->3, 和 val = 3, 你需要返回刪除3之後的鍊錶:1->2->4->5

判斷鍊錶是否為空,若是,返回null,若不是,進行下一步

判斷鍊錶第乙個結點是否為要刪除的結點,若是,將head指標向後移,若不是,無需操作;

定義指標pre,判斷當前訪問的結點是否為val:

是,將pre->next指向當前訪問結點的下乙個結點;

不是,將pre向後移動乙個結點

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

listnode *pre = head;

while (pre->next != null)

return head;

}};

在lintcode做的第一道題,花了好久。 。。

沒有考慮到此情況:1->1->->null , val=1

LintCode 刪除鍊錶中的元素

題目描述 刪除鍊錶中等於給定值val的所有節點。樣例 給出鍊錶1 2 3 3 4 5 3,和 val 3,你需要返回刪除3之後的鍊錶 1 2 4 5。做題思路 用指標指向結點,從開始結點乙個乙個找,如果該結點的值等於輸入的值,那麼對該結點進行覆蓋。關鍵 listnode removeelements...

LintCode 鍊錶劃分

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

LintCode 鍊錶排序

鍊錶排序 在 o n log n 時間複雜度和常數級的空間複雜度下給鍊錶排序。您在真實的面試中是否遇到過這個題?yes 樣例給出1 3 2 null,給它排序變成1 2 3 null.挑戰 標籤 相關題目 definition for listnode.public class listnode p...