Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Ricorsione alberi

Visualizzazione discussione

  1. #1

    Ricorsione alberi

    Salve, io devo fare un esercizio sugli alberi:"Scrivere la funzione public static <E>boolean isContained(Tree<E> T, E x)
    che restituisce true se e solo se x contenuto in qualche nodo dell�albero."
    Premetto che io e la ricorsione siamo 2 cose distinte e separate, non riesco a capire una cosa. Quando il programma va a effettuare la ricorsione, restituisce tanti false e un true quando trova l'elemento. Come posso fare in modo che il programma restituisca true? Grazie a tutti!


    codice:
        public static <E> boolean isContained(Tree<E> t, E x) {       
             if(t.isEmpty()){
                throw new EmptyTreeException("L'albero è vuoto.");
            }
            return find(t,t.root(),x);
            
        }
    
    
        public static <E> boolean find(Tree<E> t, Position<E> p, E x) {
            System.out.println(p.element());
            if(p.element().equals(x)) {
                return true;
            } else {
                if(!p.element().equals(x) && t.isInternal(p)) {
                    for(Position<E> i: t.children(p)) {
                        find(t,i,x);
                    }
                }
                return false;
            }
        }
    Ultima modifica di Aleandro23; 15-06-2017 a 11:01

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.