博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

DS-单链表:定位单链表尾结点

Posted on 2023-02-16 01:14  乔55  阅读(17)  评论(0编辑  收藏  举报

一、定位尾结点

思路:

  • 初始时令指向p指向头结点,循环条件为p->pnext!=NULL来遍历链表即可

代码:

/// @brief 定位链表尾结点
/// @param plist 
/// @return 返回定位结果
/// @retval 非NULL:尾结点地址
/// @retval NULL:定位失败
myLNode* xxx_locateTail(myLinkList* plist)
{
    if (plist == NULL)
    {
        return NULL;
    }
    return xxx_locateTail_(plist->phead);
}
myLNode* xxx_locateTail_(myLNode* phead)
{
    if (phead == NULL || phead->pnext == NULL)
    {
        return NULL;
    }
    myLNode* p = phead;
    while (p->pnext != NULL)
    {
        p = p->pnext;
    }
    return p;
}