Кто еще не смотрел, ловите ссылки ниже 😉
1️⃣ Реализовать функцию reduceString (2 способа решения: через цикл и reg exp)
Темы: работа со строками, регулярные выражения, суррогатные пары (пример: "😊").
console.log(reduceStr('AAABBBBBBB😊😊😊😊FFFFFFFMMHELLO123333GGGK'))
//Должно получиться: A3B7😊4F7M2HEL2O1234G3K
🔗 Ссылка
2️⃣ Написать аналог Array.flat (2 способа решения: через рекурсию и через стэк в качестве массива)
Темы: рекурсия, замена рекурсии на кастомный стэк.
console.log(flat([
[[1, [100, [5]]], 2],
[[1]],
2
])); // [1, 100, 5, 2, 1, 2]
console.log(
flat([[1, 2], [[1]], 2])
); // [1, 2, 1, 2]
Примечание: часто на собеседованиях дают условие "реши задачу без использования рекурсии". Поэтому стоит уметь решать задачи разными способами. Решение Array.flat без рекурсии по ссылке ниже.
🔗 Ссылка
3️⃣ Поиск числа в матрице. Search a 2D Matrix
Темы: бинарный поиск, поиск в матрице.
console.log(searchMatrix([[1,3,5,7],[10,11,16,20],[23,30,34,60]], 3)) // true
Данная задача есть на LeetCode. Уровень Medium.
🔗 Ссылка
P.S. Не забываем, что на моем YouTube есть отдельный плейлист для Front-End разработчиков по подготовке к решению задач на собеседованиях 😉. Его можно найти здесь.