求链表的表长


算法思路:从首元结点开始,依次计数所有节点。

① 先定义一个 指针p ,让它指向首元结点,即 p = L->next

 

② 然后让 指针p 移向下一个结点。p = p->next

③ 一直重复第二步,然后 i 也随之加一,直到 p==NULL;再结束。

 

④ 此时 i 的值就是单链表的长度,

代码部分:

int ListLength_L(LinkList L){//返回单链表L中数据元素个数
    LinkList p;//定义一个指针p,用以指向传入的单链表参数
    p=L->next;//将首元结点的地址,赋值给指针p,此刻指针p指向首元结点
    i=0;
    while(p){//遍历单链表,统计节点数,p=NULL时,while循环停止。
        i++;
        p=p->next;
    }
    return i;//返回表中元素的个数
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM