suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Suchen Sie mit der JavaScript-Funktion nach Teilzeichenfolgen

Ich möchte einen Code in der JavaScript-Sprache schreiben, der nach der Anzahl der Wiederholungen von Buchstaben in einem Wort suchen kann, wie dieser Code, aber auf kürzere Weise o(n).

function naiveSearch(long, short){
    var count = 0;
    for(var i = 0; i < long.length; i++){
        for(var j = 0; j < short.length; j++){
           if(short[j] !== long[i+j]) break;
           if(j === short.length - 1) count++;
        }
    }
    return count;
}
naiveSearch("lorielol loled", "lol")

P粉098979048P粉098979048443 Tage vor500

Antworte allen(1)Ich werde antworten

  • P粉958986070

    P粉9589860702023-09-14 00:42:16

    使用.substring().slice()方法而不是嵌套循环。

    function naiveSearch(long, short) {
      var count = 0;
      for (var i = 0, limit = long.length - short.length; i < limit; i++) {
        if (long.substring(i, i + short.length) == short) {
          count++;
        }
      }
      return count;
    }
    
    console.log(naiveSearch("lorielol loled", "lol"));

    Antwort
    0
  • StornierenAntwort