typedef struct LNode
{
int data;
struct LNode *next;
}LNode,*LinkList;
//简单选择排序
void SimpleSelectSortList(LinkList head)
{
LinkList p,q,s;
int min,t; //min记录最小值 ,t用来交换位置
if(head==0||head->next==0) return;
for(q=head;q!=0;q=q->next)
{
min=q->data;s=q; //q指向待换元素
for(p=q->next;p!=0;p=p->next) //遍历找到最小的结点
{
if(min>p->data)
{
min=p->data;
s=p;//s记录最小的结点的位置
}
if(s!=0) //交换值
{
t=s->data;
s->data=q->data;
q->data=t;
}
}
}
}