void sort_list(struct node* head)
{
struct node* pre, * p, * q;
struct node* tail = NULL;
while (head->next != tail)
{
pre = head;
p = head->next;
q = p->next;
while (p->next != tail)
{
if (p->data > q->data)//升序排列
{ //交换节点
pre->next = q;
p->next = q->next;
q->next = p;
//pre->next = p->next;
//p->next = pre->next->next;
//pre->next->next = p;
}
else
{
p = p->next;
}
q = p->next;
pre = pre->next;
}
tail = p;
}
}