Сложность: easy
Учитывая две строки, игла и стог сена, верните индекс первого вхождения иглы в стоге сена или -1, если игла не является частью стога сена.
Пример:
Input: haystack = "sadbutsad", needle = "sad"
Output: 0
👨💻 Алгоритм:
1⃣Определяем длины строки
needle и haystack, начинаем поиск с нулевого индекса. 2⃣Используем
substr для извлечения подстроки из haystack и проверяем на совпадение с needle. 3⃣Если совпадение найдено, возвращаем индекс, иначе продолжаем поиск, пока не достигнем конца
haystack. 😎Решение:
class Solution {
/**
* @param String $haystack
* @param String $needle
* @return Integer
*/
function strStr($haystack, $needle) {
$needleLen = strlen($needle);
$haylen = strlen($haystack);
$start = 0;
while (true) {
$substring = substr($haystack, $start, $needleLen);
if ($substring == $needle) {
return $start;
}
if ($start == $haylen-1) {
return -1;
}
$start++;
}
return -1;
}
}Ставь 👍 и забирай 📚 Базу знаний