- 单链表的长度求法与顺序表不同(顺序表有现成的函数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返回值带走。相比较,第二种方法更简化,推荐使用第二种🍍