数据库中的链串问题
以链串为存储结构,设计一个算法把最先出现的子串“ab”改为“xyz”
void Repl(LiString *&s)
{
LiString *p=s->next,*q;
int find=0;
while(p->next!=NULL&&find==0)
{
if(p->data=='a'&&p->next->data=='b')
{ p->data='x';p->next->data='z';
q=(LiString *)malloc(sizeof(LiString));
q->data='y';q->next=p->next;p->next=q;
find=1;
}
else p=p->next;
}
}
现设计一个算法,把第二个出现的子串"ab"替换为"xyz"
请教一下,应该怎么设计?