链表排序

人走茶凉 提交于 2019-12-01 06:55:40

 

1、冒泡排序

 

void Sort(List &L)
{
    List r,q;
    r= L->next;
    List p = new LNode;
    p->next = NULL;
    for (q=L->next;q;q=q->next)//for(int i=0;i<num;i++)
    {
        for (r=L->next;r->next; r=r->next)
        {
            
            if (r->books.price < r->next->books.price)
            {
                p->books = r->next->books;
                r->next->books = r->books;
                r->books = p->books;
            }
        
        }
    }
}或者
for (int i=0;i<num;i++)
    {
        r = L->next;
        for (int j=0;j<num-i-1;j++)
        {
            
            if (r->books.price < r->next->books.price)
            {
                p->books = r->next->books;
                r->next->books = r->books;
                r->books = p->books;
            }
            r = r->next;
        }
    }

 

 

2、快排

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!