如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
会计学§4.1串的逻辑(luójí)结构及操作§4.1串的逻辑结构(jiégòu)及操作§4.1串的逻辑结构(jiégòu)及操作§4.1串的逻辑(luójí)结构及操作§4.1串的逻辑结构(jiégòu)及操作§4.1串的逻辑结构(jiégòu)及操作四、串的ADT应用(yìngyòng)举例§4.1串的逻辑(luójí)结构及操作§4.1串的逻辑(luójí)结构及操作§4.1串的逻辑结构(jiégòu)及操作§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现上节课内容回顾:3、串的ADT4、串的ADT基于顺序存储结构(jiégòu)的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现分几种情况:s.curlen+t.curlen<=maxlen:正常联结(liánjié)s.curlen+t.curlen>maxlen)AND(s.curlen<maxlen):没有正常联结(liánjié)但联接了部分s.curlen=maxlen:没有正常联结(liánjié)3、取子串模式匹配:在一个主串中,查找子串是否存在(cúnzài),存在(cúnzài)返回子串的位置;不存在(cúnzài)返回0。子串称为模式。§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现intINDEX(seqstrings,seqstringt,intpos)//返回子串t在主串s中第pos个字符之后(zhīhòu)的位置,//若不存在返回0{i=pos;j=1;while(i<=s.curlen)&&(j<=t.curlen)if(s.ch[i]==t.ch[j]){i++;j++;}else{i=i-j+2;j=1;}//将i指针回溯if(j>t.curlen)return(i-t.curlen);elsereturn(0);//匹配失败}算法(suànfǎ)效率:§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现上节课内容回顾:上节课内容回顾:上节课内容回顾:练习题§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现将串s中所有子串t的出现(chūxiàn)都置换为v在s中定位t,然后根据t和v二者的的长度:t.curlen<v.curlen:后移动v.curlen-t.curlent.curlen=v.curlen:替换t.curlen>v.curlen:前移动t.curlen-v.curlen重复,直到s中不存在t为止。§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.2串的存储结构及操作的虚拟实现§4.3串的应用(yìngyòng)本章(běnzhānɡ)小结4、串的ADT基于顺序存储结构(jiégòu)的虚拟实现练习(liànxí):