刪除鍊錶中等於給定值 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思路:指標 current_node 遍歷鍊錶,當 current_node -> next 的值等於 val ,則刪除 current_node ->next,否則 current_node 指標後移。輸出: 1->2->3->4->5
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向後移動一步 如果...