欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【数据结构】(单链表)递归删除值为 x的节点(不带头节点)

程序员文章站 2024-03-21 14:36:58
...

算法思想:其实就是递归查找然后判断删除。注意:这里由于传递的是引用所有不会断链

void Delete_x(LinkList &head,int x){
	if(head==NULL) return;
	if(head->data==x){
		LNode *p;  //临时结点 
		p=head;
		head=head->next;  //这里是因为递归调用传的为引用所以 不会断链
		free(p);
		Delete_x(head,x);  //因为是引用传递并且已经将head的next'赋值给了head了  
	}else{
		Delete_x(head->next,x);
	}
}