public void delete(T pData){ 
        boolean estado;
        estado= false;
        Node tmp = _head;
        
        if(_head == _tail){
               _head = _tail = null;
               estado= true;
        } 
        if (_head.get_data().equals(pData)){
            Node tmp2= _head;
            _head=_head.getNext();
            tmp2.setNext(null);
            _head.setPrev(null);
            estado=true;
        }
        if(_tail.get_data().equals(pData)&& estado==false){
               Node tmp2 = _tail;
               _tail= tmp2.getPrev();
               tmp2.setPrev(null);
               _tail.setNext(null);
               estado=true;
        }
                
        if (estado == false){
            while(tmp != null){
                if(tmp.get_data().equals(pData)){
                    tmp.getNext().setPrev(tmp.getPrev());
                    tmp.getPrev().setNext(tmp.getNext());
                    tmp.setPrev(null);
                    tmp.setNext(null);
                    tmp = null;
                }
                else{
                    tmp=tmp.getNext();
                }
            }
        }
    }