private BinaryNode<K> search(K pk){

//		System.out.println("Aquitoy");
    	BinaryNode<K> current = this.root;
    	@SuppressWarnings("unused")
		BinaryNode<K> previous = new BinaryNode<K>();

    	
    	while(current.getData() != pk){
    		//Conditions of insert
        	if((Integer)pk > (Integer)current.getData() &&
        	   current.getRight() != null){
        		
    			previous = current;
        		current = current.getRight();
//	        	System.out.println("derecha");
    		}

    		if ((Integer)pk < (Integer)current.getData() && 
				current.getLeft() != null){
					
        		previous = current;
        		current = current.getLeft();
//        		System.out.println("izquierda");
    		}
    		
    		if(current.getLeft() == null && current.getRight() == null &&
    		   current.getData() != pk) {
    			
    			System.out.println("No fruit in this tree...");
    			break;
    		}
        }
    	
      //System.out.println(current.getData());
        return current;
    }