链表反转
来源:互联网 发布:java运行时异常 编辑:程序博客网 时间:2024/06/05 12:47
链表定义
class ListNode { int val; ListNode next; ListNode(int x) { val = x; }}
非递归实现很简单,只需要遍历一遍链表,在遍历过程中,把遍历的节点一次插入到头部。
public ListNode reverseList(ListNode head) { ListNode prev = null; while(head!=null){ ListNode tmp = head.next; head.next = prev; prev = head; head = tmp; } return prev; }
递归实现:翻转head->为首的链表, 然后head变为尾部节点
public ListNode reverseList(ListNode head) { if(head==null||head.next ==null) return head; ListNode prev = reverseList(head.next); head.next.next = head; head.next = null; return prev; }
阅读全文
0 0
- 链表反转
- 反转链表
- 单向链表反转
- 链表反转:
- 链表的反转
- 链表反转
- 反转单向链表
- 链表反转
- 单向链表反转
- 单向链表反转
- 链表的反转
- 链表反转
- 反转链表
- 链表反转
- 链表反转
- 链表反转
- 链表反转
- 链表的反转
- Spinner设置第一次默认不被选中
- Java8新特性_四大内置核心函数式接口
- AOP expression语法
- Android studio更新后出现警告:Warning:The `android.dexOptions.incremental` property is deprecated and it has
- 阿里云服务器部署otter实现数据双A同步过程记录(6)
- 链表反转
- HDU-5572-An Easy Physics Problem
- javac基于无源码的web项目编译新增java类
- oracle 学习
- html input type text标签属性和方法事件
- 那些证书相关的玩意儿(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等)
- 关于maven项目如何获取在resource下的文件路径
- laravel+ajax 上传图片
- C#托管和非托管的资源(四)——处理非托管资源