logologo

如何删除链表指定值?

Aug 16, 2023

如何删除链表中指定值?

Node *remove_value(Node *head, int value) {
  while (head != nullptr) {
    if (head->value != value) break;

    head = head->next;
  }

  Node *pre = head, *cur = head;
  while (cur != nullptr) {
    if (cur->value == value)
      pre->next = cur->next;
    else
      pre = cur;
    cur = cur->next;
  }
  return head;
}

C++Java
浙ICP备2021022773号    2022-PRESENT © ZhengKe