Die Implementierung von strStr() ist einfach

Algorithmus zwanzig Tage

vierzehnter Tag

Implementieren Sie strStr().
Implementieren Sie die Funktion strStr().

Finden Sie anhand der beiden Saiten „Heuhaufen“ und „Nadel“ die erste Position der Saite „Nadel“ in der Zeichenfolge „Heuhaufen“ (der Index beginnt bei 0). Gibt -1 zurück, wenn nicht vorhanden.

veranschaulichen:

Was sollen wir zurückgeben, wenn die Nadel eine leere Zeichenfolge ist? Das ist eine gute Frage, die man in einem Vorstellungsgespräch stellen sollte.

Für diese Frage sollten wir 0 zurückgeben, wenn die Nadel ein leerer String ist. Dies entspricht der Definition von strstr() in C und indexOf() in Java
.

Beispiel 1:

Eingabe: haystack = „hello“, Needle = „ll“ Ausgabe: 2 Beispiel 2:

Eingabe: haystack = „aaaaa“, Needle = „bba“ Ausgabe: -1 Beispiel 3:

Eingabe: Heuhaufen = "", Nadel = "" Ausgabe: 0

Hinweis:

1 <= haystack.length, Needle.length <= 104 haystack und Needle
bestehen nur aus englischen Kleinbuchstaben

Autor: LeetCode
Link: https://leetcode-cn.com/leetbook/read/top-interview-questions-easy/xnr003/

int strStr(string haystack, string needle) {
    
    
        
        int len_H = haystack.size();
        int len_N = needle.size();
        if(len_N==0) return 0;
        int i=0;
        int j=0;
        while(i<len_H && j<len_N){
    
    
            if(haystack[i]==needle[j]) {
    
    i++;j++;}
            else{
    
    
                i=i-j+1;
                j=0;
            }
            
        }
        if(j==len_N) return (i-j);
        return -1;      
    }

Guess you like

Origin blog.csdn.net/BeiWoFW/article/details/124371882