|
|
|
Как проще читать рекурсию
|
|||
|---|---|---|---|
|
#18+
Всем привет! Вроде осилил не очень глубокие рекурсии типа public static long fact(int N){ for(int i=0;i<N;i++); if(N<=0)return 1; return fact(N-1)*N; } Но как правильно читать большие рекурсии(сотни,тысячи вызовов), есть ли этика чтения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2014, 11:56 |
|
||
|
Как проще читать рекурсию
|
|||
|---|---|---|---|
|
#18+
Что такое "читать рекурсию"? Что такое "этика чтения"? Вы эти термины сами придумали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2014, 11:58 |
|
||
|
Как проще читать рекурсию
|
|||
|---|---|---|---|
|
#18+
SRVdudko, Как говорится, люди делятся на 2 категории: те, кто понимают рекурсию, и все остальные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2014, 12:15 |
|
||
|
Как проще читать рекурсию
|
|||
|---|---|---|---|
|
#18+
SRVdudko, Этики в программировании нет, есть эстетика. Почитайте про то, как организуются вызовы процедур на машинном уровне. Стековая память, регистр адреса возврата, регистр базы локальных переменных, указатель верхушки стека. Осознайте вызов процедуры как объект, содержащий параметры и локалы, и ссылающийся на код. Код неизменен, так что вполне могут сосуществовать разные вызовы, ссылающиеся на один и тот же код. Затруднения возникают от профессионального жаргона "вызов процедуры". Мозг впадает в ступор - как это вызвать процедуру, если она уже вызвана. Замените пока на "создание вычислительного объекта типа factorial". Мозг же не возражает против множества однотипных объектов - он их видит каждый день - одинаковые машины, одинаковые телефоны, одинаковые бутылки молока. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2014, 15:05 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=183&tid=2127504]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
81ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 428ms |

| 0 / 0 |
