解題思路:
方法一:
1.新建乙個節點,遍歷鍊錶,如果值相等,連線到下乙個節點,原指標下移.
public static listnode removeelements(listnode head, int val)
listnode heada=head;
listnode cur = new listnode(-1);
listnode pre = cur;
while (heada != null) else
}return pre.next;
}
方法二:
1.首先找到首元素不是要刪除的元素的鍊錶,然後遍歷鍊錶,如果元素相等,指向下乙個節點
public static void main(string args)
public static listnode removeelements(listnode head, int val)
// 1.找到頭結點不為要刪除的元素
while(head!=null && head.val==val)
//2.找到要刪除的元素跳過
listnode cur=head;
if(cur==null)
while(cur.next!=null)else
}return head;
}
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向後移動一步 如果...
LeetCode 203 移除鍊錶元素
題目 刪除鍊錶中等於給定值 val 的所有節點。示例 輸入 1 2 6 3 4 5 6,val 6 輸出 1 2 3 4 5 筆記解析 刷題就 是個踩坑的過程,閃一下子卻很舒服,因為會有成長 坑點 1 注意有多個要刪除的節點鏈結 例子 1,2,6,6,6,3,4 解法 將三種類別分開討論,只要是cu...
Leetcode 203 移除鍊錶元素
刪除鍊錶中等於給定值 val 的所有節點。示例 輸入 1 2 6 3 4 5 6,val 6 輸出 1 2 3 4 5 這個題目比較簡單,可以考慮用遞迴的方式實現 在某乙個結點處,如果下乙個結點等於val,則只需要丟掉該結點,但是如果該節點不等於val,則應該保留該結點。邊界條件就是,如果在到了最後...