题目

https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/

题解
  • 暴力O(mn), i指向haystack当前位置,最多共移动 m-n 次. j 指向needle 当前位置,i每移动一次,往后n个字符与needlen个字符进行比较,如果出现字符不等,则i继续后移,否则字符找到,返回i
var strStr = function(haystack, needle) {
    let [m,n] = [haystack.length,needle.length]
    if( m < n ){
        return -1;
    }
    for(let i=0;i < m-n+1;i++){
        let flag = true;
        for(let j = i; j < n + i; j++){
           if( haystack.charAt(j)!==needle.charAt(j-i)){
             flag = false;
             break;
           }
        }
        if(flag)return i;
    }
    return -1;

};
12-04 11:26