反转链表

题目:输入一个链表,反转链表后,输出新链表的表头。
解题思路:
此题应该也是第三次解,综上第三次解思路可以打开,需要设定什么未知数,返回值类型等。。
1:nex保存当前操作结点的后续部分,防止丢失。
2:cur当前操作,将其与pre链接,连在pre之后。
3:更新pre,将当前结点的值给pre,即下一结点操作时也是插入pre之前。
4:更新cur值,跳至下一个需要连接的结点。

class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
        ListNode *cur = pHead;
        ListNode *nex = nullptr;
        ListNode *pre = nullptr;
        while(cur){
            nex = cur->next;
            cur->next = pre;
            pre = cur;
            cur = nex;
        }
        return pre;
    }
};
全部评论

相关推荐

05-07 17:58
门头沟学院 Java
wuwuwuoow:1.简历字体有些怪怪的,用啥写的? 2.Redis 一主二从为什么能解决双写一致性? 3.乐观锁指的是 SQL 层面的库存判断?比如 stock > 0。个人认为这种不算乐观锁,更像是乐观锁的思想,写 SQL 避免不了悲观锁的 4.奖项证书如果不是 ACM,说实话没什么必要写 5.逻辑过期时间为什么能解决缓存击穿问题?逻辑过期指的是什么 其实也没什么多大要改的。海投吧
点赞 评论 收藏
分享
认真搞学习:这个真喷不了,你是我见过最美的牛客女孩
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务