亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

數據結構實驗之串一:KMP簡單應用

2019-11-10 18:55:01
字體:
來源:轉載
供稿:網友

PRoblem Description 給定兩個字符串string1和string2,判斷string2是否為string1的子串。 Input 輸入包含多組數據,每組測試數據包含兩行,第一行代表string1(長度小于1000000),第二行代表string2(長度小于1000000),string1和string2中保證不出現空格。 Output 對于每組輸入數據,若string2是string1的子串,則輸出string2在string1中的位置,若不是,輸出-1。 Example Input

abca12345645abcddd

Example Output

14-1

Hint

Author cjx

#include <iostream>#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 1010000using namespace std;void getnext(int *next, char *p)//next數組的獲取{ int i=-1, j=0; next[0]=-1; while(p[j++]!='/0') { while(p[j]!=p[i+1]&&i>=0) i=next[i]; if(p[j]==p[i+1])next[j]=i++; else next[j]=-1; }}int kmp(char *str1, char *str2, int *next)//KMP算法{ int lstr1=strlen(str1); int lstr2=strlen(str2); int i=-1, j=0; while(i<lstr1-1&&j<lstr2) { if(str1[i+1]==str2[j]) { i++; j++; } else if(i<0)j++; else if(i>=0)i=next[i]; } return (i==lstr1-1)?(j-i):-1;}int main() { char str[ N ] = {0}; char ptr[ N ] = {0}; int next[ N ]; while( ~scanf( "%s%s", str, ptr ) ) { getnext( next, ptr); printf( "%d/n", kmp( ptr,str,next) ); } return 0; }

kmp有不同的實現形式,主要是不同的next數組的獲取方法#include

include

include

include

define N 1010000

using namespace std;

void getnext(int *next, char *p) { int i=-1, j=0; next[0]=-1; while(p[j++]!=’/0’) { while(p[j]!=p[i+1]&&i>=0) i=next[i]; if(p[j]==p[i+1])next[j]=i++; else next[j]=-1; } } int kmp(char *str1, char *str2, int *next) { int lstr1=strlen(str1); int lstr2=strlen(str2); int i=-1, j=0; while(i


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲xxxx做受欧美| 亚洲色图色老头| 亚洲精美色品网站| 久久久久在线观看| 91精品免费久久久久久久久| 清纯唯美亚洲综合| 国产在线98福利播放视频| 成人激情视频在线播放| 国产欧美久久久久久| 国产噜噜噜噜久久久久久久久| 久久久www成人免费精品张筱雨| 在线观看亚洲视频| 欧美大片免费观看| 色综合老司机第九色激情| 中文字幕自拍vr一区二区三区| 久久影院免费观看| 亚洲国产成人爱av在线播放| 久久国产精品久久国产精品| 国产精品高清在线| 亚洲欧美制服综合另类| 亚洲香蕉成视频在线观看| 国产成+人+综合+亚洲欧洲| 久久不射电影网| 亚洲va欧美va在线观看| 日韩激情第一页| 色婷婷av一区二区三区久久| 欧美午夜电影在线| 欧美一性一乱一交一视频| 欧美国产精品日韩| 亚洲欧洲国产伦综合| 亚洲第一偷拍网| 91亚洲精品一区| 国产精品视频专区| 中文字幕精品视频| 国产不卡视频在线| 国产精品成熟老女人| 亚洲精品在线看| 91在线中文字幕| 久久婷婷国产麻豆91天堂| 亚洲精品丝袜日韩| 久久激情视频免费观看| 中文字幕亚洲欧美在线| 久久久人成影片一区二区三区观看| 亚洲综合在线中文字幕| 久久精品电影一区二区| 国产精品久久久久久久久久久久| 国产精品第100页| 欧美午夜www高清视频| 亚洲视频第一页| 欧美壮男野外gaytube| 欧美性一区二区三区| 欧美精品激情blacked18| 亚洲美腿欧美激情另类| 91av在线播放| 欧美视频在线视频| 91免费电影网站| 亚洲成人av中文字幕| 欧美精品久久久久久久免费观看| 久久久久久伊人| 久久91精品国产91久久跳| 色偷偷av一区二区三区| 亚洲免费电影一区| 久久电影一区二区| 亚洲成色777777在线观看影院| 日本亚洲欧洲色| 成人写真视频福利网| 亚洲精品久久久久久久久久久久| 青青精品视频播放| 日本伊人精品一区二区三区介绍| 欧美日韩国产91| www高清在线视频日韩欧美| 国产日韩在线观看av| 亚洲综合大片69999| 精品免费在线观看| 久久久久久国产| 亚洲激情视频网站| 国产91在线播放精品91| 日韩日本欧美亚洲| 97色在线播放视频| 欧美激情va永久在线播放| 欧美亚洲在线播放| 欧美国产精品人人做人人爱| 96sao精品视频在线观看| 欧美视频在线观看 亚洲欧| 国内精品久久久久伊人av| 国外视频精品毛片| 国产午夜精品免费一区二区三区| 亚洲女人天堂成人av在线| 亚洲男人的天堂在线播放| 九九九热精品免费视频观看网站| 一区国产精品视频| 韩国日本不卡在线| 亚洲一区二区三区乱码aⅴ蜜桃女| 欧美成人黄色小视频| 日韩免费在线播放| 2018中文字幕一区二区三区| 亚洲第一福利网站| 欧美日在线观看| 国产99久久久欧美黑人| 91欧美精品午夜性色福利在线| 国产欧美一区二区三区久久| 97视频在线观看网址| 一本一本久久a久久精品综合小说| 亚洲精品自产拍| 亚洲xxxx做受欧美| 亚洲国产91色在线| 亚洲片国产一区一级在线观看| 久久久精品一区二区三区| 亚洲人成网在线播放| 日韩精品视频在线观看网址| 欧美乱人伦中文字幕在线| 色噜噜亚洲精品中文字幕| 57pao成人国产永久免费| 亚洲第一区中文字幕| 国产成人精品在线观看| 亚洲激情视频在线| 26uuu另类亚洲欧美日本老年| 激情亚洲一区二区三区四区| 亚洲国产一区二区三区在线观看| 国产免费一区二区三区在线观看| 国产日韩综合一区二区性色av| 日本视频久久久| 中文字幕精品国产| 国产精品久久不能| 国产精品成熟老女人| 91精品国产沙发| 狠狠干狠狠久久| 中文字幕欧美在线| 国产丝袜精品视频| 中文字幕av一区中文字幕天堂| 精品视频在线播放| 国产精品第三页| 热re99久久精品国产66热| 国产日韩欧美影视| 久久精品国产免费观看| 亚洲美女在线看| 91久久久久久久| 在线视频亚洲欧美| 91亚洲国产成人久久精品网站| 色婷婷久久一区二区| 日韩中文字幕视频在线观看| 日产精品久久久一区二区福利| 中文字幕日韩高清| 中文字幕在线日韩| 成人欧美一区二区三区黑人孕妇| 日韩欧美中文字幕在线播放| 日本精品久久久久久久| 国产在线a不卡| 91精品国产91久久久久久吃药| 青青青国产精品一区二区| 欧美一级片久久久久久久| 亚洲午夜国产成人av电影男同| 91精品国产91久久久久久| 国产精品一区二区三区久久久| 亚洲成av人片在线观看香蕉| 久久精品久久久久久国产 免费| 国产精品aaaa| 精品亚洲aⅴ在线观看| 青青a在线精品免费观看| 最新69国产成人精品视频免费| 欧美亚洲国产精品| 亚洲精品美女在线| 奇米影视亚洲狠狠色| 成人a在线视频|