王道说下面的代码有BUG,比如当删除的结点p在最后一个元素时,p->next=NULL;
So *q =NULL;
q->data就是错误的,我认为加个判断就行
加个判断即可
/*看着是删除q了,从结果上看就是把p删除了 偷天换日法*/
bool DeleteNode(LNode *p)
{
if(p==NULL)
return false;
LNode *q = p
王道说下面的代码有BUG,比如当删除的结点p在最后一个元素时,p->next=NULL;
So *q =NULL;
q->data就是错误的,我认为加个判断就行
加个判断即可
/*看着是删除q了,从结果上看就是把p删除了 偷天换日法*/
bool DeleteNode(LNode *p)
{
if(p==NULL)
return false;
LNode *q = p