从串S中删除其中等于字符c的所有字符
void Delete(SqString &S,char c)
{
int i,j;
for(i=0;i<S.length;i++)
{
if(S.data[i]==c)
{
for(j=i;j<S.length-1;j++)
{
S.data[j]=S.data[j+1];
}
S.length--;
}
}
}
//上述算法效率很低
void DelAll(SqString &S,char c)
{
int k=0,i=0;
while(i<S.length)
{
if(S.data[i]==c)
k++;
else
S.data[i-k]=S.data[i];
}
S.length=S.length-k;
}

浙公网安备 33010602011771号