优化版:
void SortList(PSListNode pHead)
{
if (NULL == pHead)
{
return;
}
else
{
int flag = 0;
PSListNode pTailNode = NULL;
//当设置的尾节点与头结点指向同一个节点时,说明只有一个元素为排序,那么冒泡完成
while (pTailNode != pHead)
{
PSListNode pPreNode = pHead;
//每次参与比较的都是尾节点前面的结点
while (pPreNode