Код Middle Реализация с нуля обновлено
Поиск по имени файла
Условие
checkFileName(search, fileName): все символы search должны встречаться в имени файла по порядку, но не обязательно подряд. Расширение файла не учитывается. Пример: 'crdle' и 'crocodile.txt' → true, 'el' → false.
Примеры
checkFileName("crdle", "crocodile.txt") // true
checkFileName("le", "crocodile.txt") // true
checkFileName("el", "crocodile.txt") // false
Как подойти
Ровно тот алгоритм, что стоит за нечётким поиском файлов в редакторах. Один проход и один указатель дают O(n). Ловушки, которые проверяют тесты: 'el' не подходит, потому что порядок важен; расширение отрезается, иначе 'txt' пройдёт; пустой запрос подходит всегда. В оригинальном коде с собеседования был выход за границу массива - цикл шёл по i <= length.
Подсказки: 3
- Это проверка на подпоследовательность, а не на подстроку.
- Один указатель по искомому, один проход по имени.
- Расширение отрезается до начала поиска.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.