![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 17.11.2017
Сообщений: 11
|
![]()
Помогите, пожалуйста, понять рекурсию на след. примере..
<rec> <= [ <rec> X <rec> YY <rec> | <rec> YY <rec> X <rec> ] Это EBNF... [] означает опция | означает выбор из двух альтернатив Ответы могут быть следующими: XYY, YYX, XYYYYX, XXYYYY. Т.е. получается, что если мы выбираем сначала левый вариант: <rec> X <rec> YY <rec>, то происходит следующее: Вызывается например первая <rec> в списке два раза, по ее окончании, выдается "X" и мы заходим во вторую <rec>.. а дальше у меня путаница начинается, как же это можно себе представить наглядно? Спасибо за любой совет!! |
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Тут ничего не вызывается. EBNF - это описание.
Цитата:
|
|
![]() |
![]() |
![]() |
#3 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
![]()
Нарисуйте дерево!
Дерево рекурсивных вызовов.
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
![]() |
![]() |
![]() |
#4 | |
Новичок
Джуниор
Регистрация: 17.11.2017
Сообщений: 11
|
![]() Цитата:
<rec> <= | X <rec> YY дает возможность записать такие элементы XXX YYYYYY. И используется здесь рекурсия, но данный пример я себе хорошо представляю, а вот вышеуказанный нет. Ваше объяснение, к сожалению, крайне непонятно, но спасибо за попытку. |
|
![]() |
![]() |
![]() |
#5 |
Новичок
Джуниор
Регистрация: 17.11.2017
Сообщений: 11
|
![]() |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Новичок
Джуниор
Регистрация: 17.11.2017
Сообщений: 11
|
![]() |
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Я не про их "равенство" друг другу, а про подход/построение и т.д. И если вы понимаете, как работаете второе, то и первое работает абсолютно также.
|
![]() |
![]() |
![]() |
#9 | ||
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]() Цитата:
Этот гораздо лучше. Цитата:
pram Какие у вас есть навыки в работе с рекурсией? Какие задачи уже решали? а) Фибоначчи б) размен денег монетами в) обход в ширину г) обход в глубину д) проверка скобок на правильность е) проверка трёх разных видов скобок на правильность ж) регулярные выражения.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
||
![]() |
![]() |
![]() |
#10 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
П.С. Забыл спросить вас интересует генерация последовательностей по языку или распознавание входной последовательности?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Рекурсия | MaSS93 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 24.05.2012 18:52 |
рекурсия на С++ | erfo | Помощь студентам | 2 | 23.05.2012 19:06 |
рекурсия | Lena neznayka | Помощь студентам | 2 | 16.06.2010 20:46 |
Рекурсия | Solnze2 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 09.06.2010 09:28 |
рекурсия | qwerty98765 | Помощь студентам | 1 | 10.04.2010 15:22 |