Forum Informatica Unict

LAUREA TRIENNALE (D.M. 270/04) => Programmazione 2, 9 CFU => Topic started by: Angelo on 15-09-2010, 11:03:29



Title: Dubbio compilazione Albero
Post by: Angelo on 15-09-2010, 11:03:29
Ciao ragazzi, stamattina stavo implementando un albero, ma nel momento che faccio esegui mi dice:
Code:
Note: BTNodo.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
>Exit code: 0

ecco il codice:
Code:
/Nodo

class BTNodo<E>{
  protected E info;
  protected BTNodo<E> left;
  protected BTNodo<E> right;
  
  public BTNodo( ){
    left = right = null;
  }

  public BTNodo(E info){
      this(info, null, null );
  }

  public BTNodo(E info, BTNodo<E> left, BTNodo<E> right ){
    this.info=info;
this.left=left;
this.right=right;
        }
  
  public E getInfo(){
    return info;
    }
public BTNodo<E> getLeft(){
    return left;
    }
public BTNodo<E> getRight(){
    return right;
    }
public void setLeft(BTNodo<E> left){
    this.left=left;
    }
public void setRight(BTNodo<E> right){
    this.right=right;
    }
}

//Albero

class BSTree<E extends Comparable>{
  protected BTNodo<E> root;
  
  public BSTree(){
    root = null;
  }

  public BSTree(BTNodo<E> root){
    this.root = root;
  }
  
  public BTNodo<E> getRoot(){
    return root;
  }
  
 public void insert(E e){
    root = insert( e, root );
  }
  
  public BTNodo insert(E e, BTNodo<E> t){
    if( t == null )
      t = new BTNodo<E>(e);
        else if(e.compareTo(t.info) < 0 )
                    t.left = insert(e, t.left );
          else if(e.compareTo( t.info ) > 0 )
                    t.right = insert(e, t.right );
          else
              ;  // E' un duplicato; viene ignorato
          return t;
 }
 
  public BTNodo<E> searchMax( ){
    return searchMax(root);
  }

  public BTNodo searchMax(BTNodo<E> t){
    if( t != null )
      while( t.right != null )
        t = t.right;
        return t;
  }

  public BTNodo<E> searchMin(){
    return searchMin(root);
  }
  
  public BTNodo searchMin(BTNodo<E> t){
    if (t != null)
      while (t.left != null)
        t = t.left;
        return t;
  }

  public BTNodo search(E e){
    return  search( e, root );
  }

  private BTNodo search(E e, BTNodo t ){
    if(t == null)
      return null;
    if(e.compareTo( t.info ) < 0 )
      return search( e, t.left );
    else if( e.compareTo( t.info ) > 0 )
      return search( e, t.right );
    else
      return t;
  }
}


Saziate la mia ignoranza!  :boh


Title: Re:Errore compilazione Albero
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 15-09-2010, 11:20:16
Direi che seguire le istruzioni, in questi casi, è la cosa migliore  .sisi:
Code:
Note: Recompile with -Xlint:unchecked for details.
considerato anche che, diversamente da come hai specificato in "Oggetto", non c'è alcun errore .nono...


Title: Re:Dubbio compilazione Albero
Post by: Daréios89 on 15-09-2010, 13:32:33
Non è un errore, è un warning, anche se non ho mai capito che cosa significa quel warning, ma non è un errore e non dovrebbe compromettere il corretto funzionamento del codice.