首页 > 编程知识 正文

尾插法建立单链表不带头结点,c语言链表交换

时间:2023-05-04 05:01:47 阅读:51246 作者:3167

link list * linklistinsertsort (link list * phead ) )。

{

链接列表* pfirst=(链接列表* ) NULL; /*原始链表中仍有未排序节点的头指针*

链接列表* pcurrinsert=(链接列表* ) NULL; /*当前插入到无序链表中的节点*

链接列表* pprev=(链接列表* ) NULL; /*有序链表插入位置前的节点*

链接列表* ppost=(链接列表* ) NULL; /*节点位于有序链表的插入位置*

pFirst=pHead-m_next; //原始链表的未排序链表的第一个节点/

pHead-m_next=NULL;/*有序链表,只包含一个节点*

空!=pFirst ()/*遍历无序链表) /

{

pCurrInsert=pFirst;

pPost=pHead;

while () ) (空!=pPost () pPost-m_key pCurrInsert-m_key ) )

{

pPrev=pPost;

pPost=pPost-m_next;

}

pFirst=pFirst-m_next;

if(ppost==phead(/*节点pCurr插入在第一个节点之前(/

{

pHead=pCurrInsert;

}

else /* pPrev是pPost的前体*/

{

pPrev-m_next=pCurrInsert;

}

pCurrInsert-m_next=pPost; /*节点pCurrInsert */

}

返回头;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。