![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.03.2012
Сообщений: 60
|
![]()
Задание: Написать программу для определения правильности введённого скобочного выражения на основе стека, реализованного с помощью связного списка. Три вида скобок: (),[],{}.
Сам стек я написал. А а вот на алгоритмах проверяющих правильность введенного скобочного выражения я завис... SOS |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 24.04.2012
Сообщений: 300
|
![]()
А что сложного дальше? Начинаешь читать из стека строку, находишь скобку, запоминаешь в список например куда-нибудь (самое простое будет), потом смотришь если попалась парная ей, удаляешь ту что запомнил. В итоге после прохода по стеку в списке у тебя остануться скобки, которым не нашлось пары, если таковые есть, значит выражение неверное.
Помог? Оставляем отзыв =)
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,833
|
![]()
если (,[,{ то добавить в стек
если ),],} и скобка_из_стека не соответствующая то неправильно |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]()
Обычно делается так. Открывающая скобка записывает код, её характеризующий, в стек. Если находится закрывающая скобка, происходит выталкивание из стека.
В процессе работы стека делается проверка на переопустошение (нет парных скобок). Или в конце выражения на остаток (излишек скобок). Так-же может возникнуть ситуация (изменения порядка следования скобок). Проверяется вершина стека на открытую-закрытую скобки. Цитата:
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 24.04.2012
Сообщений: 300
|
![]()
А ну да =) Я то просто подумал что он строчку в стек затолкал =))
Помог? Оставляем отзыв =)
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Стек | MarsikSA | Помощь студентам | 1 | 23.04.2012 14:44 |
стек | cop08 | Общие вопросы C/C++ | 1 | 25.03.2011 19:18 |
Стек | [ICQ] | Помощь студентам | 5 | 02.05.2010 13:44 |
стек в с++ | Aleksa_ks | Помощь студентам | 0 | 02.05.2010 12:12 |