LeetCode 206 Reverse Linked List

来源:互联网 发布:淘宝购物分享红包 编辑:程序博客网 时间:2024/04/27 14:01

题目:

Reverse a singly linked list.

题目链接

题意:

题目只有一句话,反转一个单链表,给一个单向链表,将链表反转。

那道题目后,一时没想到效率很高的办法,隔了一天后再做,突然想到可以用递归,在交换两个节点之前,先把后面节点进行交换,最主要的递归式是:

void Reverse(ListNode* a, ListNode* b) {    Reverse(b, b->next);    b->next = a;}
在 此基础上进行优化和情况判断,当最后一位时,需要进行记录新的头结点,所以可以利用全局变量,另外,原来的首节点的next应指向NULL,加上这两个情况,可得出函数:

class Solution {public:    ListNode *Head;    void Reverse(ListNode* a, ListNode* b) {        if (b->next == NULL) {            Head = b;        }        else {            Reverse(b, b->next);            }        b->next = a;    }    ListNode* reverseList(ListNode* head) {        if (head && head->next) {            Reverse(head, head->next);            head->next = NULL;            return Head;        }        return head;    }};


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 建筑公司挂靠发生人员伤残怎么办 外地生小孩落北京户口怎么办 户籍档案查不到直系亲属关系怎么办 考过了二建注册怎么办 异地工作辞职回家档案怎么办 离职怎么办档案放在人才市场 人才房住了6年后怎么办 医保辞职后断了怎么办 社保断了生育险怎么办 深圳小产权房水电费纠纷怎么办 有公租房的再婚怎么办 廉租房被没收了怎么办 商铺到期房东不续租怎么办 天津集体户口买不起房怎么办 房东不想续租了怎么办 唯一住房卖掉后户口怎么办 杭州唯一住房卖掉后户口怎么办 唯一一套住房卖掉户口怎么办 房租押金条丢了怎么办 二建证书跟毕业证丢失怎么办 住宅房到70年怎么办 护照号变了机票怎么办 苹果se指纹坏了怎么办 月经推迟怎么办才能快点来 车载支架不粘了怎么办 otpc平板电脑无法开机怎么办 手表表轴掉了怎么办 鸡肉放冰箱臭了怎么办 鸡胸肉熟了腥怎么办 梦幻西游手游手机号换了怎么办 ppt做一半卡住了怎么办 吃了发霉的蚝油怎么办 蛋皮干燥起皮怎么办 wps卡顿资料没保存怎么办 手指受伤肉掉了怎么办 手机被wifi禁了怎么办 母乳一边是咸的怎么办 tcl电视蓝频了怎么办 长虹电视蓝频了怎么办 电视突然蓝频了怎么办 海信电视蓝频了怎么办