剑指Offer编程题(Java实现)——反转链表
2024-09-04 03:54:54
题目描述
输入一个链表,反转链表后,输出新链表的表头。
思路一
使用头插法迭代进行反转
实现
/*
public class ListNode {
int val;
ListNode next = null; ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode ReverseList(ListNode head) {
ListNode newHead = new ListNode(-1);
while(head != null){
ListNode tmp = head.next;
head.next = newHead.next;
newHead.next = head;
head = tmp;
}
return newHead.next;
}
}
思路二
递归
实现
public ListNode ReverseList(ListNode head) {
if (head == null || head.next == null)
return head;
ListNode next = head.next;
head.next = null;
ListNode newHead = ReverseList(next);
next.next = head;
return newHead;
}
思路参考:https://www.nowcoder.com/discuss/198840
最新文章
- iOS - .a静态库的打包(包括打包的文件中用到了一些别人的三方库和分类的处理)
- 在iframe中获取本iframe DOM引用
- mac 软件安装
- JBPM学习(四):执行流程实例
- POJ 1502 MPI Maelstrom( Spfa, Floyd, Dijkstra)
- 如何禁止scrollView 的子控件自动滑到 底部或者中间部分
- popen() 使用举例 (转载)
- vector入门
- CSS盒子内容
- Flask特殊装饰器
- 关于使用JPA中@Query注解传递表名/视图名参数的问题
- PhantomJSのメモいろいろ
- 【Unity笔记】UGUI的Text文本框的大小随着文本字数变化
- JavaScript中Array
- Nginx之让用户通过用户名密码认证访问web站点
- RabbitMQ入门_12_发布方确认
- Syslink Control in MFC 9.0(转)
- 5个基于Web的建模工具
- 直播 背景 技术体系 乐视云直播Demo
- pageadmin建站软如何修改和设置iis站点应用程序池
热门文章
- 移动端ios和安卓input问题
- hdu 3376 : Matrix Again【MCMF】
- 阿里云移动研发平台 EMAS 助力银行业打造测试中台,提升发版效能
- Codeforces 950D A Leapfrog in the Array ( 思维 &;&; 模拟 )
- clojure的语法糖
- sqli-labs(30)
- [Codeforce526F]:Pudding Monsters(分治)
- C# 使用 MsieJavaScriptEngine 引擎运行JavaScript
- tp 下载
- java Map类