我正在编写一个从代码战中的链接列表中删除给定号码的功能。我通过了7个测试用例中的6个,但是第7个被隐藏了,所以我看不到它在做什么。谁能看到我缺少此功能的哪个测试用例?
// Definition for singly-linked list:
// template<typename T>
// struct ListNode {
// ListNode(const T &v) : value(v), next(nullptr) {}
// T value;
// ListNode *next;
// };
#include <stdio.h>
ListNode<int> * removeKFromList(ListNode<int> * l, int k) {
ListNode<int> *cur = l;
ListNode<int> *temp = l;
while (cur != NULL) {
if (cur->value == k) {
if (cur == l) {
ListNode<int> *del;
del = cur;
cur = cur->next;
l = l->next;
temp = temp->next;
delete del;
} else {
ListNode<int> *del = cur;
cur = cur->next;
temp->next = cur;
delete del;
}
} else {
temp = cur;
cur = cur->next;
}
}
return l;
}