02. Check if One String is in Another

Qusetion Link: GeeksForGeeks

bool check(const string &str, const string &part, const int &i) {
    for(int j = 0; j < part.size(); j++)
        if(part[j] != str[i + j])
            return false;
    return true;
}

int strstr(string str, string part)
{
    if(str.size() < part.size())
        return -1;
        
    // find first char match
    for(int i = 0; i <= str.size() - part.size(); i++) 
        if(str[i] == part[0] && check(str, part, i))
            return i;
            
    return -1;
}

Last updated