- 单链表的长度求法与顺序表不同(顺序表有现成的函数length()),下面是求单链表长度的两种方法,伪代码。
方法一:
Status Length_L(LinkList L,int &e)
{
LinkList p=L->next;//定义头指针
int j=1;//定义j来计数
while(p)//while(p!=NULL)
{
p=p->next;//指针向后
j++;//计数器++
}
e=j-1;//通过e将终值带走
return OK;
}
方法二:
int Length_L(LinkList L)
{
LinkList p;
int j;
while(p)//此处若改为while(p->next)则结尾可以直接return j;
{
p=p->next;
j++;
}
return j-1;
}
方法一通过引用最终通过e将结果带走,方法二直接通过int返回值带走。相比较,第二种方法更简化,推荐使用第二种🍍