LeetCode反转链表

LeetCode反转链表_第1张图片

LeetCode反转链表_第2张图片

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
struct ListNode* reverseList(struct ListNode* head) {
    struct ListNode * current_node,*next_node,ret;
    if(head == NULL){
        return head;
    }
    current_node = head->next;
    head->next = NULL;
    while(current_node != NULL){
        next_node = current_node->next;
        current_node->next = head;
        head = current_node;
        current_node = next_node;
    }
    return head;
}

 

你可能感兴趣的:(数据结构,LeedCode)