[leetCode] 1961. Check If String Is a Prefix of Array

2024/06/03に公開

https://leetcode.com/problems/check-if-string-is-a-prefix-of-array/description/

問題

  • 文字列sと、複数の単語を格納した配列wordsが与えられる
  • wordsを頭からひとつずつ繋げたとき、sと同じ文字列になるタイミングがあるかを返す

解法

単にひとつひとつ結合し、sと比較するとよい。

/**
 * @param {string} s
 * @param {string[]} words
 * @return {boolean}
 */
var isPrefixString = function(s, words) {
    let s2 = "";
    for(const word of words) {
        s2 += word;
        if(s === s2) return true;
    }

    return false;
};

余談

for-ofを使用した場合、単にforでインデックスを作って回すより計算量がよくなった。理由はよくわからない。

Discussion