leetcode 简单 第六十题 反转链表

Posted 丁壮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 简单 第六十题 反转链表相关的知识,希望对你有一定的参考价值。

反转一个单链表。

示例:

输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL

进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
struct ListNode* reverseList(struct ListNode* head) {
    if (NULL == head || NULL == head->next)
    {
        return head;
    }
    struct ListNode* a=head;
    struct ListNode* b=head->next;
    struct ListNode* c;
    
    head->next = NULL;
    while (b)
    {
        c = b->next;
        b->next = a;
        a = b;
        b = c;
    }
    head = a;
    return head;
}

 


以上是关于leetcode 简单 第六十题 反转链表的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 简单 第六十七题 回文链表

leetcode 简单 第六十九题 删除链表中的节点

第六十题——[BJDCTF2020]EasySearch

《剑指offer》第六十题:n个骰子的点数

每日一题 为了工作 2020 0501 第六十题

《每日一题》之第六十题考查知识点:指派问题动态规划问题(题源自上海海事大学09年真题第五大题)(图一为昨天题目答案)