public void Swap(Node a, Node b,Lista lista){
        if(a.getPrev()==null && b.getNext()==null){
            Node tmp= a.getNext();
            a.setNext(null);
            a.setPrev(b.getPrev());
            b.getPrev().setNext(a);
            b.setPrev(null);
            b.setNext(tmp);
            tmp.setPrev(b);
            lista.setHead(b);
        }
        else if(a.getPrev()==null){
            if(a.getNext()==b){
                Node tmp=b.getNext();
                a.setNext(tmp);
                tmp.setPrev(a);

                b.setNext(a);    
                b.setPrev(null);
                lista.setHead(b);
            }
            else{
                Node Nsiguiente= a.getNext();
                
                a.setNext(b.getNext());
                b.getNext().setPrev(a);
                a.setPrev(b.getPrev());
                b.getPrev().setNext(a);
                b.setPrev(null);
                b.setNext(Nsiguiente);
                lista.setHead(b);
            }
        }
        else if(b.getNext()==null){
            if(a.getNext()!= b){
                Node tmpa = a;
                Node tmpb = b;
                Node asiguiente= a.getNext();
                Node aanterior=a.getPrev();
                a.setNext(null);
                a.setPrev(b.getPrev());
                b.getPrev().setNext(a);
                b.setNext(asiguiente);
                asiguiente.setPrev(b);
                b.setPrev(aanterior);
                aanterior.setNext(b);
            }
            else{
                Node tmp= a.getPrev();
                a.setNext(null);
                a.setPrev(b);
                b.setNext(a);
                b.setPrev(tmp);
                tmp.setNext(b);
            
            }

        }
        else if(a.getNext()==b){
            Node tmp=a.getPrev();  
            a.setNext(b.getNext());
            b.getNext().setPrev(a);
            a.setPrev(b);
            b.setNext(a);
            b.setPrev(tmp.getPrev());
            tmp.setNext(b);
        
        }
        
        else{
            Node tmpb = b;
            Node asiguiente= a.getNext();
            Node aanterior=a.getPrev();
            a.setNext(tmpb.getNext());
            a.setPrev(tmpb.getPrev());
            tmpb.getNext().setPrev(a);
            tmpb.getPrev().setNext(a);
            tmpb.setNext(asiguiente);
            tmpb.setPrev(aanterior);
            tmpb.getNext().setPrev(tmpb);
            tmpb.getPrev().setNext(tmpb);
            
        }
    }