Lista leetcode206-- tirón

Revertir una lista enlazada.

Ejemplo:

Entrada: l-> 2-> 3-> 4-> 5-> NULL
 salida: 5-> 4-> 3-> 2-> l-> NULL

Ideas de resolución de problemas:

A partir de la cabeza de la lista, hasta tres punteros a tres elementos adyacentes, cambiando constantemente de dirección entre el enlace hasta que un recorrido completo de la lista

código de implementación:

struct ListNode* reverseList(struct ListNode* head){
    struct ListNode* node = head;
    struct ListNode* cur = head;
    struct ListNode* pre = NULL;
    while(cur) { 
        cur = cur->next;
        node->next = pre;
        pre = node;
        node = cur;      
    }
    return pre;
}

El resultado:

 

Publicado 40 artículos originales · ganado elogios 2 · Vistas 587

Supongo que te gusta

Origin blog.csdn.net/scacacac/article/details/105237897
Recomendado
Clasificación