La classe della struttura è definita in tal modo (c++):
- Codice:
class Node
{
public:
Node();
~Node();
private:
vector<Node*> NextNodes; //Numero variabile di figli diretti
};
Definire un algoritmo che non sia O(n), che, partendo dal Root (Nodo Primario), arrivi a selezionare casualmente un Nodo all'interno dell'albero, in modo che la distribuzione della probabilità (che un nodo sia scelto) sia uniforme in tutto l'albero (la probabilità totale di essere selezionato deve essere uguale per tutti i nodi), conoscendo unicamente il numero totale di nodi all'interno dell'albero. ( Naturalmente però un nodo conosce il numero dei figli diretti )
Il problema, così come è descritto, è irrisolvibile, come dimostrato da vict85.