题山采玉: 反转链表

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的passion。准备好和我一起冲进代码的奇幻宇宙了吗?Let's go!

我的博客:yuanManGan

我的专栏:C++入门小馆 C言雅韵集 数据结构漫游记  闲言碎语小记坊 题山采玉

题目来源力扣反转链表

题目理解:

给了一个链表,要求将它反转,并返回头结点。

思路讲解:

1.创建新链表

我们依旧可以创建新链表来实现,用cur来遍历链表,然后将每个结点头插进来就可以实现。

2.三指针

我们定义三个指针,一个指向空,一个指向头结点,另一个指向头节点的下一个结点。

然后我们将n2指向的结点的next指向n1指向的位置,然后n1 = n2,n2 = n3,n3 = n3->next,相当于整体向右移动。

重复操作

我们就发现,链表就神奇的逆序了,注意这里结束条件应该是n2等于0,然后n3这个当它已经为空的时候,就不能进行解引用操作了,要注意。

代码实现:

方法一:

注意这个循环里面的cur会变,所以必须要用一个临时变量来存储cur的下一个结点。

方法二

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值