Author |
Message |
08/09/2017 22:02:36
|
Perez
Joined: 18/10/2014 18:53:59
Messages: 93
Offline
|
Треба да се генерира подмножества пример множество {1,2,3}
треба да се генерираат {} , {1}, {2},{3},{1,2},{1,3},{2,3},{1,2,3}
алгоритамот е ваков
Некој да ми објасни како работи тука рекурзијата не сфаќам што се дели како се дели тоа binary tree ?
|
|
|
09/09/2017 14:04:01
|
despotovski01
Joined: 23/02/2014 14:36:12
Messages: 37
Offline
|
Нека моментално го разгледуваме k-тиот елемент од множеството. Имаме две опции за него, или тој влегува во тековните подмножества што ги генерираме, или не го земаме во нив. Во првиот рекурзивен повик, ги разгледуваме сите подмножества кои не го содржат тековниот елемент, а во вториот, сите кои го содржат.
|
|
|
09/09/2017 17:06:19
|
Perez
Joined: 18/10/2014 18:53:59
Messages: 93
Offline
|
Дали се вршат последователно инструкциите или уште првиот рекурзивен повик се враќаме k+1 ?
|
|
|
10/09/2017 22:37:52
|
despotovski01
Joined: 23/02/2014 14:36:12
Messages: 37
Offline
|
Perez wrote:Дали се вршат последователно инструкциите или уште првиот рекурзивен повик се враќаме k+1 ?
Прво целосно се извршува првата рекурзија, па потоа втората.
Помош за рекурзивни функции можеш да најдеш тука (или од било кој друг релевантен извор): https://www.hackerearth.com/practice/notes/working-of-recursive-function
|
|
|
23/12/2017 19:46:08
|
Perez
Joined: 18/10/2014 18:53:59
Messages: 93
Offline
|
Дали е ова BackTracking ?
|
|
|
23/12/2017 22:15:11
|
despotovski01
Joined: 23/02/2014 14:36:12
Messages: 37
Offline
|
Perez wrote:Дали е ова BackTracking ?
Да. Започнуваш да ги генерираш подмножествата, и го земаш секој елемент во предвид, или го додаваш кон тековото подмножество, или не го додаваш. Евентуално веќе ќе немаш нови елементи за процесирање, па се враќаш наназад да донесеш друга одлука за претходните елементи. Со тоа ги испробуваш сите можности, и ги генерираш сите можни подмножества.
|
|
|
|