【数据结构/C语言】从s中删除所有和串t相同的子串,并返回删除的次数
编写算法Delete_SubString(Stringtype &s, Stringtype t),要求从s中删除所有和串t相同的子串,并返回删除的次数。
(要求利用五种基本操作:串赋值StrAssign,串比较StrCompare,求串的长度StrLength,串的联接Concat,截子串SubString 加以实现)
int Delete_SubString(Stringtype &s, Stringtype t)
//从串s中删除所有与t相同的子串,并返回删除次数
{
for(n=0,i=1;i<=StrLength(s)-StrLength(t)+1;i++)
if( !StrCompare(SubString(s,i,StrLength(t)),t) )
{
StrAssign(head,SubString(S,1,i-1));
StrAssign(tail,SubString(S,i+StrlLength(t),StrLength(s)-i-StrLength(t)+1));
StrAssign(S,Concat(head,tail)); //把head,tail连接为新串
n++;
}//if
return n,
}