【LeetCode】【HOT】206. 反转链表(迭代/递归)
【LeetCode】【HOT】206. 反转链表
文章目录
- 【LeetCode】【HOT】206. 反转链表
package hot;import java.util.Arrays;class ListNode{int val;ListNode next;ListNode(int val){this.val = val;}
}public class Solution206 {public static void main(String[] args) {ListNode a1 = new ListNode(1);ListNode a2 = new ListNode(2);ListNode a3 = new ListNode(3);ListNode a4 = new ListNode(4);ListNode a5 = new ListNode(5);a1.next = a2;a2.next = a3;a3.next = a4;a4.next = a5;Solution206 solution = new Solution206();int[] res = new int[5];ListNode head = solution.itera(a1);for(int i = 0; i < 5; i++){res[i] = head.val;head = head.next;}System.out.println(Arrays.toString(res));ListNode b1 = new ListNode(1);ListNode b2 = new ListNode(2);ListNode b3 = new ListNode(3);ListNode b4 = new ListNode(4);ListNode b5 = new ListNode(5);b1.next = b2;b2.next = b3;b3.next = b4;b4.next = b5;res = new int[5];head = solution.itera(b1);for(int i = 0; i < 5; i++){res[i] = head.val;head = head.next;}System.out.println(Arrays.toString(res));}private ListNode itera(ListNode head){ListNode prev = null;ListNode cur = head;while(cur != null){ListNode next = cur.next;cur.next = prev;prev = cur;cur = next;}return prev;}//时间复杂度为 O(n)//空间复杂度为 O(1)private ListNode recur(ListNode head){if(head == null || head.next == null){return head;}ListNode newHead = recur(head.next);head.next.next = head;head.next = null;return newHead;}//时间复杂度为 O(n)//空间复杂度为 O(n)
}
【LeetCode】【HOT】206. 反转链表(迭代/递归)相关推荐
- LeetCode Algorithm 206. 反转链表
206. 反转链表 Ideas 关于链表的题目其实画个图就很清晰了. 可以想象成两个部分,左边是已经完成翻转的链表,以pre为头结点,右边是还未翻转的链表,以cur为头结点,每次获取cur的下一个结点 ...
- leetcode系列-206.反转链表
leetcode系列–第206题.反转链表 这道题很经典 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表. 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3 ...
- LeetCode 热题 HOT 100 -------160. 相交链表(链表)206. 反转链表(递归、回溯)
dsadas /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* L ...
- 【LeetCode】206. 反转链表
链接:https://leetcode-cn.com/problems/reverse-linked-list/ 题目描述 反转一个单链表. 示例 输入: 1->2->3->4-&g ...
- LeetCode:206. 反转链表
- LeetCode 206. 反转链表(Reverse Linked List) 16
206. 反转链表 206. Reverse Linked List 题目描述 反转一个单链表. 每日一算法2019/5/19Day 16LeetCode206. Reverse Linked Lis ...
- LeetCode 206. 反转链表 Reverse Linked List
5-1 链表,在节点间穿针引线 Reverse Linked List 题目: LeetCode 206. 反转链表 反转一个单链表. 示例: 输入: 1->2->3->4-> ...
- 【LeetCode题目详解】(二)206.反转链表、876.链表的中间结点
目录 一.力扣第206题:反转链表 1.思路一 2.思路二 二.力扣第876题:链表的中间结点 1.思路一 2.思路二 总结 一.力扣第206题:反转链表 题目链接:206. 反转链表 - 力扣(Le ...
- LeetCode 206. 反转链表
206. 反转链表 难度 简单 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表. 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输 ...
最新文章
- 独家 | 一文盘点AutoML 库(附PPT等链接)
- android国际化(多语言)
- WebRTC 视频发送和接收处理过程
- 电商网站前端架构 学习笔记(全是干货)
- 小组是什么意思_生猪期货什么时候上市?相关企业如何参与生猪期货
- 主机关机后第二天就无法开机_iphone没电自动关机后无法充电和开机的解决办法!(亲身经历)...
- 遍历这些字符串,如果字符串没有包含数字的,就将字符串中的小写字母转成大写字母并打印字符串
- Django后端编辑图片提取主要颜色API
- php 怎么使循环少一次,PHP-如何让一个类仅在循环中应用一次?
- 抛弃百度UMEditor,拥抱summernote (解决上传文件又慢又卡的问题)
- 服务器控件的使用注意事项
- 想学python但是有好多英文不认识?python常用英文单词都在这
- ps—添加、去除水印
- python中sticky_position: sticky 详解(防坑指南)
- 2019CSP-J组题目-加工零件
- linux中execvp函数,Linux shell的实现——execvp
- viewpager切页
- 机器学习、深度学习面试知识点汇总
- NOJ-1401 乘车费用 题解要点
- 游戏制作RPGDreamer