Voglio creare una struttura dati per lavorare con un albero isomorfo. Non cerco un "algoritmo" o metodi per verificare se due o più alberi sono isomorfi a vicenda. Solo per creare vari alberi con la stessa struttura.
Esempio:
2 - - - - - - - 'a' - - - - - - - 3.5
/ \ / \ / \
3 3 'f' 'y' 1.0 3.1
/ \ / \ / \
4 7 'e' 'f' 2.3 7.7
Il primo "livello" o albero è "l'albero naturale" (un albero con numeri naturali), il secondo è l'albero dei caratteri e il terzo è l'albero galleggiante.
La struttura dati ha un metodo o un iteratore per attraversare l'albero e per effettuare diverse operazioni con i suoi valori. Queste operazioni potrebbero cambiare il valore dei nodi, ma mai la sua struttura (prima creo la struttura e poi configuro l'albero con i suoi diversi livelli). In tal caso aggiungo un nuovo nodo, questo sarebbe applicato a ogni livello.
Quale modello di design noto si adatta a questa descrizione o è correlato ad esso?