当前位置: 首页 > wzjs >正文

凡科模板建站生产制造erp

凡科模板建站,生产制造erp,网站备案拍布幕,做个网站页面多钱28找出字符串中第一个匹配项的下标 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。 示例 1&#xff…

28找出字符串中第一个匹配项的下标

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回  -1 

示例 1:

输入:haystack = "sadbutsad", needle = "sad"
输出:0
解释:"sad" 在下标 0 和 6 处匹配。
第一个匹配项的下标是 0 ,所以返回 0 。

示例 2:

输入:haystack = "leetcode", needle = "leeto"
输出:-1

解题思路:KMP算法。不相等j回退到前一个位置的next[j-1],相等j++;next[i]=j;

具体步骤如下

m为匹配串p长度,n为要匹配的长串s长度

1、确定前缀表next的值,初始化next[0]=0

j为前缀末尾,i为后缀末尾,初始j=0,i=1

for(i=1;i<m;i++){

    while(j>0&&p[i]!=p[j])j=next[j-1];//回退冲突的前一个位置

    if(p[i]==p[j])j++;

    next[i]=j;

}

2、匹配过程

 for(i=0,j=0;i<n;i++){

        while(j>0&&s[i]!=p[j])j=next[j-1];

        if(s[i]==p[j])j++;

        if(j==m)return i-m+1;

    }

int strStr(char* haystack, char* needle) {int n=strlen(haystack),m=strlen(needle);if(m==0)return 0;int *next=(int *)malloc(sizeof(int)*(m+1));next[0]=0;//初始化int i,j=0;//i为后缀末尾,j为前缀末尾i//处理next数组,回退到冲突前一个nextfor(i=1;i<m;i++){//前后缀不相同,此处是whilewhile(j>0&&needle[i]!=needle[j]){j=next[j-1];}if(needle[i]==needle[j]){j++;}next[i]=j;}//匹配过程 i为第一个字符串for(i=0,j=0;i<n;i++){while(j>0&&haystack[i]!=needle[j])j=next[j-1];if(haystack[i]==needle[j])j++;if(j==m)return i-m+1;}return -1;
}

--

http://www.dtcms.com/wzjs/544357.html

相关文章:

  • 自己可以学着做网站吗项目网络计划
  • 用asp做网站出现空白企业门户网站的安全性
  • 漳州台商投资建设局网站上海网站推广找哪家
  • 域名备案查询站长之家空间设计网站公司
  • 网站建设期末论文淮南网官方网站
  • 遵义企业网站建设上传图片做网站维护
  • 网站建设的分工wordpress the7汉化版
  • 简易广州网站建设抖音推广引流方式
  • 铜陵做网站的毕设做网站答辩会要求当场演示吗
  • 网站优化目的郑州音乐制作公司
  • 门头沟建设网站中国打仗最新消息
  • rp做网站原型要缩小尺寸吗商业计划书范文
  • 制造网站建设网页游戏排行傍
  • 做网编去网站还是工作室好国外装修效果图网站
  • 网站开发维护需要哪些岗位国内高端网站定制
  • 北京网络营销网站印象庆阳网
  • 乐东黎族自治县住房建设局网站个人网站不能有盈利性质
  • 小说网站怎么建设新浪微博可以做网站吗
  • 最超值的锦州网站建设沈阳紧急通知
  • 快速建站网站优秀的app界面设计案例
  • 做乒乓球网站的图片衡水网站建
  • cms做网站不用后端wordpress入门教程
  • 视频网站的嵌入代码是什么网络推广公司代理
  • soho的网站怎么做做网站资料准备什么
  • 泉州茶叶网站建设什么网站容易收录
  • 温州网站建设服务中心软件开发和网页设计哪个好
  • 聊城有什么网站制作公司杭州科技网站
  • 什么行业适合做网站推广管理员后台管理系统
  • 网站开发费用周期请人做装修设计上什么网站
  • 天津建设网站的公司简介陕西网站制作定制