//对线性表删除s到t之间的数(s<t) 元素前移法
bool SqDelete_x_t(SqList &L,ElemType s,ElemType t){
if(L.length<=0||s>=t)
return false;
int i=0; //标记非区间元素填入位置
for(int j=0;j<L.length;j++){ //非区间元素前移
if(L.data[j]<s||L.data[j]>t)
{
L.data[i++]=L.data[j];
}
}
L.length=i;
return true;
}
//对线性表删除s到t之间的数(s<t) 非区间元素暂存到另一个线性表
bool SqDelete(SqList &L,ElemType s,ElemType t){
if(L.length<=0||s>=t)
return false ;
SqList NewL; //创建新的线性表
NewL.length=0; //初始化新的线性表
int i=0;
for(int j=0;j<L.length;j++)
{
if(L.data[j]<s||L.data[j]>t)
{
NewL.data[i]=L.data[j]; //转移数据
i++;
NewL.length++;
}
}
L = NewL;
return true;
}