从顺序表中删除具有最小值的元素并由函数返回被删除元素的值。空出的位置由最后一个元素填补,若顺序表为空则显示错误信息并退出运行。
bool DelMin(SqList &L,ElemType &x)
{
if(L.length==0)
return false;
x=L.data[0];
int min=0;
for(int i=1;i<L.length;i++)
if(L.data[i]<x)
{
x=L.data[i];
min=i;
}
L.data[min]=L.data[L.length-1];
L.length--;
return true;
}