最后还是在Sears outlet买了洗衣机烘干机, 4.3+7.5# Living
l*d
1 楼
题目:Given a linked list of integers, delete all the nodes from the linked
list which data value equals to a given value.
void delete(Node **l, int target);
这个人的答案如下,是不是错了?见我的注释
void deleteRep(LNode **l, int target){
if(!(*l)) return;
LNode *p = *l;
while(p){
if(p->data == target){
if(p == *l){
*l = p->next;
free(p);
p = *l;
}
else{
LNode *q = p;
p = p->next;
free(q); //没有把p的predecessor的next指向p的next
}
}
else{
p = p->next;
}
}
}
list which data value equals to a given value.
void delete(Node **l, int target);
这个人的答案如下,是不是错了?见我的注释
void deleteRep(LNode **l, int target){
if(!(*l)) return;
LNode *p = *l;
while(p){
if(p->data == target){
if(p == *l){
*l = p->next;
free(p);
p = *l;
}
else{
LNode *q = p;
p = p->next;
free(q); //没有把p的predecessor的next指向p的next
}
}
else{
p = p->next;
}
}
}