Встречается на собеседованиях • сегодня
Приведи пример, когда на практике применяется стек
Стек (LIFO - Last In, First Out) часто используется в ситуациях, где нужно обрабатывать элементы в обратном порядке их добавления. Например, при парсинге HTML или XML для проверки корректности вложенности тегов:
```python
def is_html_valid(html):
stack = []
i = 0
while i < len(html):
if html[i] == '<':
if html[i+1] != '/':
# Открывающий тег
j = html.find('>', i)
tag = html[i+1:j]
stack.append(tag)
else:
# Закрывающий тег
j = html.find('>', i)
tag = html[i+2:j]
if not stack or stack.pop() != tag:
return False
i = j
i += 1
return len(stack) == 0
print(is_html_valid("
")) # True
print(is_html_valid("
")) # False
```
Другие примеры использования стека:
- Отмена действий (undo/redo)
- Обход графов в глубину (DFS)
- Вычисление выражений (обратная польская запись)
- Управление вызовами функций в интерпретаторах

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