[#002] 28. Implement strStr()


Posted by s1101192101 on 2021-05-12

  • link:
    leetcode

  • 解題思路:

    1. 使用雙層迴圈對 haystack 及 needle 做比對
    2. 若比對到不符合的字原則跳出迴圈

  • 程式碼:

/**
 * @param {string} haystack
 * @param {string} needle
 * @return {number}
 */
const strStr = function(haystack, needle) {
  if ((haystack.length === 0 && needle.length === 0) || haystack === needle) {
    return 0;
  }

  let isMatch;
  for (var i = 0; i < haystack.length - needle.length + 1; i++) {
    isMatch = true;
    for (var j = 0; j < needle.length; j++) {
      if (haystack[i + j] !== needle[j]) {
        isMatch = false;
        break;
      }
    }
    if (isMatch) break;
  }

  return isMatch ? i : -1;
};


  • 結果:



#Leetcode #string #easy







Related Posts

Vue3 Proxy ? Vue2 Define Property 的不同?

Vue3 Proxy ? Vue2 Define Property 的不同?

關於 React 小書:實作 Clock 並簡介 component lifecycle 裡各個階段的作用

關於 React 小書:實作 Clock 並簡介 component lifecycle 裡各個階段的作用

JS 展開  (Spread Operator) 以及反向展開 (Rest Parameters)

JS 展開 (Spread Operator) 以及反向展開 (Rest Parameters)


Comments