data){pre=p;q=p->link;} //找到新的最小值结点 p=p一>link; } if{q!=list->link){ //若最小值是第一元素结点,则不需再操作 pre一>link=q一>link; //将最小值结点从链表上摘下 q->link=list一>link; //将q结点插到链表最前面 list一>link=q; } }//算法结束