Kopiowanie gałęzi drzew w lesie.

0

Witam

potrzebuje kopiować gałęzie drzew w lesie, tzn mam jedno drzewo wzorcowe, i resztę korzeni bez gałęzi,
potrzebuje aby każde drzewo jeśli nie ma syna, skopiowało gałąź od wzorca, i tak w głąb - jeśli drzewo ma jednego syna , a na wzorcu ten syn ma wnuków to również ma sobie ich skopiować.

pytanie : jak polecacie zapisać taką strukturę? macierz sąsiedztwa ? (każde drzewo oraz każda gałąź ma inne ID, nie oszczędzamy pamięci)
pytanie numer dwa : ktoś robił już coś takiego ? macie jakaś sprawdzoną metodę? proszę nie odsyłajcie mnie w bzdurne miejsca, tylko sensowne rozwiązania lub cenne wskazówki

0

Ale masz jakiś problem, żeby drzewo trzymać w postaci dynamicznych struktur powiązanych przy pomocy wskaźników, tak jak tradycyjnie implementuje się drzewa?
Jeżeli to jest drzewo binarne możesz też takie drzewo trzymać w tablicy na zasadzie jeżeli masz dany węzeł o indeksie i to dwóch synów ma indeksy 2i oraz 2i+1. Są też inne możliwości, np. możesz trzymać takie drzewo w porządku inorder.
Napisz dokładniej z czym masz problem.

0

drzewo nie jest binarne, korzeń może mieć nawet 100 synów - więc tylko macierze sąsiedztwa ze znanych mi struktur danych
każdy syn może mieć kilkadziesiąt atrybutów - interesuje mnie tylko wiedza jakie są między nimi zależności na wzorcowym drzewie i kopiować odpowiednie gałęzie lub liście na inne drzewa wraz z atrybutami. kopiowanie atrybutów nie jest problemem - bardziej sie zastanawiam jak to optymalnie zrobić.

pomysł z inorder, ciekawy, pokombinuje tak :) jeszcze jakies pomysły ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1