Мне нужно проверить, является ли массив под-массивом другого большего массива.(найти слово (подмассив) в предложении (массиве)).
Мне нужно сделать это в алгоритме рекурсии.что время выполнения будет log (n).
массивы:
char[] sentence = {'h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd'};
char[] word = {'l', 'l', 'o', 'w', 'o', 'r'};
char [] word = {'t', 'n' , 'p'};
мой код:
static boolean wordFinder(char[] arr, char[] arr2, int l, int i) {
if (i == arr2.length - 1) {
return true;
}
if (arr[l] == arr2[i]) {
return wordFinder(arr, arr2, l + 1, i + 1);
}
if (l == arr.length - 1) {
return false;
}
return wordFinder(arr, arr2, l + 1, 0);
}
третий массив предназначен только для проверки кода,(код работает, просто нужно знать время выполнения).