Сколько предметов в стеке после некоторого порядка операций? - PullRequest
0 голосов
/ 27 марта 2020

В классе у нас есть проблема, которую нужно попробовать, и я просто пытаюсь найти наилучший способ решения проблемы go. Вопрос заключается в следующем: «Первоначально пустой стек выполняет (в некотором порядке) 18 операций pu sh, 8 операций peek и 12 операций pop. 3 из peek и 5 pop возвращают null. Сколько элементов в стеке после операции завершены ".

Честно говоря, сейчас я могу думать только о том, как угадать и проверить сценарий ios, но должен быть лучший способ. Я только учусь об этом, так что, возможно, есть простой способ сделать это, я просто недостаточно осведомлен, ха-ха. Спасибо за любую помощь, которую вы можете предложить:)

Ответы [ 2 ]

0 голосов
/ 27 марта 2020

Операция pop пытается удалить элемент из стека. Это может удастся и фактически удалить элемент. Или может произойти сбой (потому что стек пуст) и не изменить стек. Ошибка обозначена null.

. Вы выполняете 12 pop операций, из которых 5 возвращают ноль. Это означает, что 12-5 = 7 элементов были фактически удалены из стека.

Вы знаете, сколько элементов было помещено в стек, и теперь вы знаете, сколько элементов было удалено. Должно быть легко вычислить, сколько осталось. Количество операций peek - красная сельдь: взгляд не изменяет стек.

0 голосов
/ 27 марта 2020

Поскольку 5 всплывающих операций возвращают ноль, было выполнено 7 всплывающих операций => 11 элементов, peek видит только элемент в верхней части стека, но не меняет его

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...