Da...
Dobro jasno je da, svako stablo treba povezati da jednim tj. napraviti od njih put u oba smera... Znaci problem se svodi na jedno stablo. Ovde cu ja diskutovati o obicnom grafu (ne mora biti stablo)...
Definisicemo dva skupova cvorova:
[1] Tops = minimalni skup cvorova iz kojih se moze stici u sve ostale cvorove
[2] Bottoms = minimlani skup cvorova u koje se moze stici iz svih cvorova
Jasno je, da ukoliko nadjemo algoritam za nalazenje Tops, on je analogan za Bottoms. Tops, cemo naci na sledeci nacin:

, ukoliko njega pokriva neki Top

, ukoliko je on top
Uvek, cim imamo neki cvor koji nije markiran, u njega stavimo Top, markiramo i odtopiramo sve u koje on moze da dodje (BFS, DFS) i idemo dalje...
Na kraju resenje je

...
Dokaz zadnje cinjenice ostavljam za citaoce... :-)
Math is like love. A simple idea but it can get complicated.