/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode* removeElements(ListNode* head, int val) {
ListNode* h = head;
ListNode* pre = NULL;
while(h!=NULL)//顺序查找,O(N)
{
if(h->val == val)
{
if(pre == NULL)
{
head = head->next;
pre = NULL;
}
else
{
pre->next = h->next;
}
}
else
{
pre = h;
}
h = h->next;
}
return head;
}
};LeetCode || Remove Linked List Elements
最新推荐文章于 2024-10-24 09:42:39 发布
本文介绍了一种在单链表中移除所有值为特定数值节点的方法,通过顺序遍历链表并更新指针实现。此操作的时间复杂度为O(N),其中N为链表长度。
1353

被折叠的 条评论
为什么被折叠?



