数据结构学习笔记(3)——链表排序

说明(2018-3-16 14:30:56):

1. 本来想自己写写试试,发现写不出,只好看视频,看完后发现,自己想破脑袋也写不出。

2. 方法其实就是,先写一个普通的数组排序,然后在for循环的i和j后面,加上p和q指针变量的赋值和自增。

void SortList(pNODE pHead)
{
    int len = LengthList(pHead);
    pNODE p, q;
    int t, i, j;

    for (i = 0, p = pHead->pNext; i < len - 1; i++, p = p->pNext)
    {

        for (j = i + 1, q = p->pNext; j < len; j++, q = q->pNext)
        {
            if (p->data > q->data)
            {
                t = p->data;
                p->data = q->data;
                q->data = t;
            }
        }
    }
}
原文地址:https://www.cnblogs.com/Jacklovely/p/8581156.html