使用双指针,读指针遍历后面节点,与当前的节点比较,符合条件(比大小)就交换,因此该算法涉及到两个循环
void sort_list(node *head)
{
node *p, *q, *s;
int t;
p = head;
while(p)
{
s = p;
q = p->next;
while(q)
{
if (q->value < s->value)
s = q;
q = q->next;
}
if (s !=p)
{
t = s->value;
s->value = p->value;
p->value = t;
}
p = p->next;
}
}