标题:一个单向链表,不知道头结点,一个指针指向其中的一个结点,问如何删除这个 ...
取消只看楼主
wlhdhn
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2009-11-18
结帖率:50%
已结贴  问题点数:0 回复次数:2 
一个单向链表,不知道头结点,一个指针指向其中的一个结点,问如何删除这个指针指向的结点?
如题。
对于不是最后一个结点的程序已运行通过,而当该指针指向单链表的最后一个结点时,请问该怎么删除?
typedef struct Node
{
  int data;
  Node *next;
}*Link;
void deletenode(Link p)
{//删除p所指向的结点
  Link q=p->next;
  if(q)//当p不是指向最后一个结点时
 {
   p->data=q->data;
   p->next=q->next;
   delete q;
 }
  else//当p指向最后一个结点时
 ?????????
}
搜索更多相关主题的帖子: 如何 
2011-08-24 19:19
wlhdhn
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2009-11-18
得分:0 
回复 3楼 lintaoyn
当该结点是最后一个结点时,为什么什么都不做啊?
2011-08-25 09:18
wlhdhn
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2009-11-18
得分:0 
谢谢楼上,你提供的这个方法可行!但是它实质上并没有删除结点,
2011-08-25 09:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-348323-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.081284 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved