leetcode刷题-剑指offer-24题
leetcode刷题-剑指offer-24题
题目
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
解答
新手上路,才学疏浅,望斧正
- 采用头插法对链表逆序
- 依次从链表中读出一个节点
- 插入新节点的前面
class Solution {
public ListNode reverseList(ListNode head) {
//返回结果
ListNode resList=null;
ListNode p=head;
while (p!=null){
if(resList==null){
//如果逆序链表为空
resList=new ListNode(p.val);
resList.next=null;
}else {
//否则在其前插入
ListNode tmp=new ListNode(p.val);
tmp.next=resList;
resList=tmp;
}
p=p.next;
}
return resList;
}
}
本文作者:发呆鱼
本文链接:https://www.cnblogs.com/dyiblog/p/15778613.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步