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

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

28. Implement strStr() 以及KMP算法的實現

2019-11-11 04:09:42
字體:
來源:轉載
供稿:網友

28. Implement strStr()

題目描述

Implement strStr().

Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

代碼實現

這里需要注意的是不需要把母字符串全部迭代一次,只需要到還剩下子串長度的索引地方。 代碼一:

class Solution {public: int strStr(string haystack, string needle) { int h_len = haystack.length(); int n_len = needle.length(); int rel = -1; if(h_len < n_len) return rel; if(haystack == needle || needle == "") return 0; for(int i = 0; i <= h_len - n_len; i++) { for(int k = 0, j = i; k < n_len && j < h_len; k++, j++) { if(haystack[j] != needle[k]) break; else if(k == n_len - 1) return i; } } return rel; }};

代碼二:把上面的代碼精簡一下。

class Solution {public: int strStr(string haystack, string needle) { int m = haystack.length(), n = needle.length(); if (!n) return 0; for (int i = 0; i < m - n + 1; i++) { int j = 0; for (; j < n; j++) if (haystack[i + j] != needle[j]) break; if (j == n) return i; } return -1; }};

當然在尋找子串方面,KMP是最經典的算法。 使用KMP尋找子串可以得到:

class Solution {public: int strStr(string haystack, string needle) { int m = haystack.length(), n = needle.length(); if (!n) return 0; vector<int> lps = kmpPRocess(needle); for (int i = 0, j = 0; i < m; ) { if (haystack[i] == needle[j]) { i++; j++; } if (j == n) return i - j; if (i < m && haystack[i] != needle[j]) { if (j) j = lps[j - 1]; else i++; } } return -1; }private: vector<int> kmpProcess(string& needle) { int n = needle.length(); vector<int> lps(n, 0); for (int i = 1, len = 0; i < n; ) { if (needle[i] == needle[len]) lps[i++] = ++len; else if (len) len = lps[len - 1]; else lps[i++] = 0; } return lps; }};

KMP算法的介紹:

http://jakeboxer.com/blog/2009/12/13/the-knuth-morris-pratt-algorithm-in-my-own-Words/ http://www.geeksforgeeks.org/searching-for-patterns-set-2-kmp-algorithm/ BOOK: Introduction to Algorithm


上一篇:delegate vs event

下一篇:KMP探索

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩高清电影免费观看完整版| 社区色欧美激情 | xvideos亚洲| 国产一区二区色| 日韩性xxxx爱| 亚洲性生活视频| 国产91色在线|| 欧美专区福利在线| 国内成人精品一区| 久久精品视频播放| 欧美亚洲国产日本| 色妞色视频一区二区三区四区| 亚洲区中文字幕| 国产日韩欧美视频| 亚洲国产成人久久综合一区| 亚洲国产一区二区三区四区| 欧美一性一乱一交一视频| 中文字幕久久久av一区| 国产欧美一区二区三区四区| 亚洲综合一区二区不卡| 亚洲国内高清视频| 亚洲精品电影网站| 久久国产精品免费视频| 91精品国产综合久久香蕉最新版| 精品成人av一区| 欧美精品少妇videofree| 久久亚洲精品小早川怜子66| 欧美精品久久久久久久| 日韩av网址在线观看| 97视频色精品| 91久久精品国产91久久性色| 91理论片午午论夜理片久久| 中文字幕日韩欧美在线| 欧美色欧美亚洲高清在线视频| 91国语精品自产拍在线观看性色| 奇米成人av国产一区二区三区| 亚洲一区美女视频在线观看免费| 国模私拍一区二区三区| 欧美日韩电影在线观看| 欧美日韩激情网| 精品女同一区二区三区在线播放| 性欧美长视频免费观看不卡| 777777777亚洲妇女| 久久精品久久久久久国产 免费| 欧美国产亚洲精品久久久8v| 亚洲国产毛片完整版| 欧美制服第一页| 九九视频直播综合网| 日本一区二区在线播放| 国产99久久精品一区二区 夜夜躁日日躁| 国产综合视频在线观看| 国产91精品高潮白浆喷水| 国产视频自拍一区| 日韩美女免费观看| 亚洲欧美日韩图片| 怡红院精品视频| 欧美成人精品激情在线观看| 欧美日韩亚洲精品内裤| 亚洲天堂免费视频| 国产免费亚洲高清| 国产精品成av人在线视午夜片| 97色在线观看| 久久成人18免费网站| 91精品啪在线观看麻豆免费| 97超碰色婷婷| 久久成人av网站| 日韩av网址在线| 欧美视频13p| 亚洲r级在线观看| 国产成+人+综合+亚洲欧洲| 日韩最新中文字幕电影免费看| 欧美另类在线播放| 成人激情视频免费在线| 国模gogo一区二区大胆私拍| 亚洲国产女人aaa毛片在线| 中文字幕在线成人| 欧美亚洲在线播放| 日韩成人激情在线| 国产精品久久国产精品99gif| 国产精品综合网站| 日韩欧美国产骚| 欧美亚洲日本黄色| 国产精品1区2区在线观看| 亚洲成人av资源网| 成人精品一区二区三区| 日韩精品高清在线观看| 自拍偷拍亚洲一区| 欧美成年人在线观看| 欧美高清自拍一区| 日韩精品视频在线| 欧美日韩高清区| 国产在线不卡精品| 亚洲美女中文字幕| 亚洲精品小视频| 亚洲女性裸体视频| 成人信息集中地欧美| 国外成人免费在线播放| 91久久在线播放| 一区二区三区视频在线| 久久国产一区二区三区| 久久视频在线视频| 国产精品久久久av久久久| 日韩精品视频免费在线观看| 日韩乱码在线视频| 在线精品国产欧美| 国产精品第一视频| 91色视频在线观看| 操人视频在线观看欧美| 欧美日韩视频免费播放| 欧美精品日韩www.p站| 国产精品永久在线| 97在线观看免费高清| 国产精品无码专区在线观看| www.xxxx精品| 成人性生交大片免费看小说| 三级精品视频久久久久| 亚洲欧洲一区二区三区在线观看| 精品magnet| 国产精品成人品| 97超碰蝌蚪网人人做人人爽| 成人福利免费观看| 亚洲国产91精品在线观看| 国产精品白嫩初高中害羞小美女| 亚洲精品少妇网址| 精品国产鲁一鲁一区二区张丽| 日韩精品一区二区视频| 亚洲aⅴ男人的天堂在线观看| 国产成人在线一区| 欧美小视频在线| 97精品国产97久久久久久春色| 国产精品夫妻激情| 成人亚洲综合色就1024| 91av在线国产| 草民午夜欧美限制a级福利片| 美日韩精品视频免费看| 久久久久久久久久久成人| 中文字幕亚洲激情| 亚洲国产天堂久久综合网| 欧美激情一区二区三区成人| 精品亚洲一区二区三区| 亚洲国产成人在线播放| 黄色一区二区三区| 亚洲理论在线a中文字幕| 欧美在线欧美在线| 欧美国产在线电影| 91成人在线观看国产| 欧美与欧洲交xxxx免费观看| 中文字幕日韩精品在线| 欧美孕妇孕交黑巨大网站| 日韩电影中文字幕| 亚洲最大中文字幕| 久久久久久噜噜噜久久久精品| 日韩免费电影在线观看| 国产精品自拍网| 日韩免费视频在线观看| 国产精品中文在线| 中文字幕日韩av综合精品| 国产精品扒开腿做| 国产亚洲精品一区二555| 欧美日韩在线看| 国产999精品久久久影片官网| 综合136福利视频在线| 亚洲天堂av图片| 欧美高跟鞋交xxxxxhd|