LeetCode 203 刪除鍊錶中的節點

2021-08-20 13:45:29 字數 722 閱讀 6290

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

/**

* definition for singly-linked list.

* struct listnode ;

*/struct listnode* removeelements(struct listnode* head, int val)

示例:

輸入: 1->2->6->3->4->5->6, val = 6

輸出: 1->2->3->4->5

思路:指標 current_node 遍歷鍊錶,當 current_node -> next 的值等於 val ,則刪除 current_node ->next,否則 current_node 指標後移。

note:因為可能要刪改頭結點,所以用建立虛擬頭節點的方式解題比較方便。

/**

* definition for singly-linked list.

* struct listnode ;

*/struct listnode* removeelements(struct listnode* head, int val) else

}return ret.next;

}

leetcode習題彙總

LeetCode 203 刪除鍊錶中的元素

刪除鍊錶中等於給定值 val 的所有元素。示例給定 1 2 6 3 4 5 6,val 6返回 1 2 3 4 5 1 第一道鍊錶結構的題 2 兩種思路 1 遞迴的方式來做 2 創造乙個結點,while迴圈的方式來做 3 因為用遞迴的話會額外的占用o n 的空間複雜度,方法2更好一些 public ...

leetcode 203 刪除鍊錶中的節點

刪除鍊錶中等於給定值val的所有節點。示例 輸入 1 2 6 3 4 5 6,val 6輸出 1 2 3 4 5 definition for singly linked list.struct listnode class solution else pre cur cur pre next re...

LeetCode 203 移除鍊錶元素

刪除鍊錶中等於給定值val的所有節點。示例 輸入 1 2 6 3 4 5 6,val 6輸出 1 2 3 4 5建立初始節點dummy和cur,cur等於dummy。再建立節點point等於head。然後point不為空時進入迴圈,如果point val等於val,那麼將point向後移動一步 如果...