p46 borrar una especie de la lista de elementos que se repiten (leetcode 83)

A: las ideas de resolución de problemas

Tiempo: El (n), el espacio: La (1)

Dos: ejemplos de código completo (C ++ versión y la versión Java)

C ++:

clase de soluciones 
{ 
público : 
    NodoLista * deleteDuplicates (NodoLista * cabeza) 
    { 
        si ((cabeza == NULL) || (cabeza-> próximo == NULL)) vuelta la cabeza; 

        NodoLista * p = cabeza; 

        mientras que (! (p = NULL) && (p-> siguiente =! NULL)) 
        { 
            si (p> val == (p-> siguiente) -> val) 
            { 
                NodoLista * todėl = p-> siguiente; 
                p -> siguiente = toDel-> siguiente; 
            } 
            Demás 
            { 
                p = p-> siguiente;
            } 
        } 

        Volver la cabeza; 
    } 
};

Java:

clase de soluciones {
     público deleteDuplicates NodoLista (cabeza NodoLista) 
    { 
        si (la cabeza == nula || head.next == nula ) de retorno de cabeza; 
        NodoLista p = cabeza; 
        
        mientras que ((p =! nula ) && (p.next =! nulo )) 
        { 
            si (== p.val p.next.val) 
            { 
                NodoLista todėl = p.next; 
                p.next = toDel.next; 
            } 
            Demás 
            { 
                p = p.next;
            } 
        } 
        
        Volver la cabeza; 
    } 
}

 

Supongo que te gusta

Origin www.cnblogs.com/repinkply/p/12510613.html
Recomendado
Clasificación