标题:关于链表排序中节点的交换问题
只看楼主
新手菜鸟鸟
Rank: 2
等 级:论坛游民
帖 子:37
专家分:57
注 册:2012-1-15
结帖率:85.71%
 问题点数:0 回复次数:0 
关于链表排序中节点的交换问题
alist *sortallinfo(alist *head)
{
    alist *p1=NULL,*p2=NULL,*px=NULL,*py=NULL,*p0=NULL;
    for (px=head;px!=NULL;px=px->next)
    for (py=px;py!=NULL;py=py->next)
    {
        p1=py;
        p2=p1->next;
        if (strcmp(p1->name,p2->name)>0)
        {
            if (p1!=head)
            {
            p1->next=p2->next;
            p0->next=p2;
            p2->next=p1;
            }
            else
            {
            p1->next=p2->next;
            p2->next=p1;
            head=p2;
            }
        }
        p0=p1;
    }
    printf("排序成功,请查看!\n");
    return head;
}这段代码有问题么?
搜索更多相关主题的帖子: next head 
2012-06-15 21:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-371621-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.065571 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved