链表相邻元素排序问题,程序能跑,但结果出错,对于一个指定链表排序时,经过排序只能得到首元素和最小元素,不知道哪里出了问题,请知道的教授一下
程序代码:
typedef struct Queue_H
{
int X;
Queue_H* next;
}Queue_H;
程序代码:
Queue_H* Q_Que(Queue_H *head)
{
Queue_H *p=head;
do
{
if((p->X)<(p->next->X))
{
Queue_H* temp1,*temp2,*temp3;
temp1=p;
temp2=p->next;
temp3=p->next->next;
p=temp2;
p->next=temp1;
p->next->next=temp3;
}
p=p->next;
}while(p!=NULL);
return head;
}
[此贴子已经被作者于2015-11-25 11:57编辑过]


