Ciao a tutti. Devo realizzare un progetto in Java, che richiede questo:"Negli alberi puo' capitare di non sapere a priori il numero dei figli di ciascun nodo. E' possibile quindi associare ad ogni nodo una lista di puntatori ai suoi figli. La lista a sua volta puo' essere rappresentata con una struttura indicizzata o con una struttura collegata.

Dopo aver realizzato opportunamente una classe NodoLF, utilizzarla per la realizzazione di una classe ALberoLF che implementi i metodi per le seguenti operazioni caratteristiche degli alberi:" e uno di questi metodi è "restituire la radice dell'albero"
Allora, io ho realizzato la classe NodoLF in questa maniera:

codice:
public class NodoLF<T> {
	private int indice;
	private T info;
	
	// Realizzazione del costruttore
	public NodoLF(T x){
		info = x;
	}
	
	public int getIndice(){
		return indice;
	}
	
	public T getInfo(){
		return info;
	}
	
	public void setIndice(int n){
		indice = n;
	}
	
	public void setInfo(T x){
		info = x;
	}
}
e il metodo l'ho realizzato cosi:
codice:
public class AlberoLF<T> {
	private NodoLF<T>[] padri = new NodoLF[0];
	private NodoLF<T>[] nodi = new NodoLF[0];
	
	public NodoLF<T>[] getPadri(){
		return padri;
	}
	
	public NodoLF<T>[] getNodi(){
		return nodi;
	}
// Punto 5; Restituisce la radice dell'albero.
	public NodoLF<T> radice(){
		NodoLF<T> radice = null;
		int i=0;
		while(padri[i]!=null)
			i++;
		radice=nodi[i];
		return radice;
	}
Ho trovato anche questo per la restituzione dei figli di un nodo
codice:
// Punto 7; Restituisce la lista dei figli di un nodo.
	public LinkedList<T> figli(NodoLF<T> v){
		LinkedList<T> figli = new LinkedList<T>();
		// Controllo per generare la lista dei figli
		if(v==null)
			return figli;
		for (int i=0;i<numNodi();i++)
			if(padri[i]==v)
				figli.add(nodi[i].getInfo());
		return figli;
	}
ma non sono sicuro di come è implementata, l'ho ripresa da una gia fatta, in quanto qui si usa un vettore, mentre a me occorre una lista. Ma non capisco come poter implementarlo con una lista.
Grazie a tutti