Встречается на собеседованиях • сегодня
Как проверить, все ли скобки расположены правильно с точки зрения математических операций в массиве скобок
Для проверки корректности расстановки скобок можно использовать стек. Алгоритм:
- Создаем стек и словарь соответствия закрывающих скобок открывающим
- Проходим по массиву скобок
- Если скобка открывающая - добавляем в стек
- Если скобка закрывающая - проверяем, соответствует ли она последней открывающей в стеке
- В конце стек должен быть пустым
Пример на JavaScript:
javascript
function isValid(brackets) {
const stack = [];
const pairs = { ')': '(', '}': '{', ']': '[' };
for (const bracket of brackets) {
if (!pairs[bracket]) {
stack.push(bracket);
} else if (stack.pop() !== pairs[bracket]) {
return false;
}
}
return stack.length === 0;
}Примеры:
isValid(['(', ')'])→trueisValid(['(', '[', ']', ')'])→trueisValid(['(', ']')]→false

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы