Esempio di un metodo statico di control per effettuare una visita pre-order con algoritmo iterativo

  public static void preOrderIter(AlberoBinario ab){
    Stack<AlberoBinario> s;
    s=new StackLista<AlberoBinario>();
    s.push(ab);
    while (!s.isEmpty()){
      ab=s.top();
      s.pop();
      if (!ab.isEmpty()) {
        //visito radice
        Console.mostraInfo(ab.informazione());
        //memorizzo in stack il sottoalbero destro per la visita successiva
        s.push(ab.destra());
        // visita sottoalb sinistro
        s.push(ab.sinistra());
      }
    }
  }

Ultime modifiche: giovedì, 13 marzo 2014, 13:18