当前位置:   article > 正文

删除单链表中节点值为x的节点_删除单链表中值为x的结点

删除单链表中值为x的结点

这里用了两种方式实现:

//这一种方式用来三个指针,一个用来遍历的p指针,一个指向p的前驱的pre指针,还有一个标识目标节点的q指针
while(p!=null)
{
	if(p->data==x)
		{			
			q=p;
			p=p->next;       			 
			pre->next=p;
			free(q);			
		 } 
	else
	{
		pre=p;
		p=p->next;	
	}
 } 
 
//这一种方式用来两个指针,一个用来遍历的p指针,一个指向p的前驱的pre指针,
 while(p!=null)
{
	if(p->data==x)
		{			
		    pre->next=p->next;
			free(p);  
			p=pre->next; 			
		 } 
	else
	{
		pre=p;
		p=p->next;	
	}
 } 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

删除节点的过程可以分为两步:

  • 找,找到要删除的节点。如何找,通过遍历
  • 删,删除目标节点。如何删,通过前驱
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/444247
推荐阅读
相关标签
  

闽ICP备14008679号