关于数据结构的链表问题
intLength_LinkList(LinkListL){intlen;//len记录链表L的表长LNode*p;p=L;//指向第一个结点len=0;while(p!...
intLength_LinkList(LinkListL)
{
intlen;//len记录链表L的表长
LNode*p;
p=L;//指向第一个结点
len=0;
while(p!=NULL)
{
len++;//结点数加1
p=p->next;
}
returnlen;
}
哪个大佬告诉我while(p!=null)在这里面的用处
如果改成while(p->next)会是什么样的 展开
{
intlen;//len记录链表L的表长
LNode*p;
p=L;//指向第一个结点
len=0;
while(p!=NULL)
{
len++;//结点数加1
p=p->next;
}
returnlen;
}
哪个大佬告诉我while(p!=null)在这里面的用处
如果改成while(p->next)会是什么样的 展开
1个回答
展开全部
代码中while(p!=NULL)等同于while(p)
intLength_LinkList(LinkListL)
{
intlen;//len记录链表L的表长
LNode*p;
p=L;//指向第一个结点
len=0;
while(p!=NULL) //等同于while(p)
{
len++;//结点数加1
p=p->next;
}
returnlen;
}
所以你说的while(p->next)也就等同于while(p->next != null),那么你的循环就会少最后一个节点(因为它自己不是null但是它的next是null)
更多追问追答
追问
那这个的意思是不是头结点不算结点个数?
追答
不是啊,这个就是所有节点都在内了,第一个节点就是头结点
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询