反转链表

class Solution {public ListNode reverseList(ListNode head) {ListNode cur = head, pre = null;while(cur != null) {ListNode temp = cur.next; // 暂存后继结点 cur.nextcur.next = pre;          // 修改 next 引用指向pre = cur;               // pre 暂存 curcur = temp;               // cur 访问下一结点,先暂存后继结点再访问后继结点}return pre;}
}

先暂存后继结点再访问后继结点

class Solution {public ListNode reverseList(ListNode head) {return recur(head, null);    // 调用递归并返回}private ListNode recur(ListNode cur, ListNode pre) {if (cur == null) return pre; // 终止条件ListNode res = recur(cur.next, cur);  // 递归后继节点cur.next = pre;              // 修改节点引用指向return res;                  // 返回反转链表的头节点}
}

Java数据结构 反转链表相关推荐

  1. Java数据结构之链表(单链表)

    文章目录 一.链表 概念 结构 二.无头单链表 图解 代码实现 特点 三.带头单链表 为何引入带头单链表 代码实现 注意 提示:以下是本篇文章正文内容,Java系列学习将会持续更新 一.链表 概念 链 ...

  2. 【Java数据结构】链表

    目录 1. 概况 2. 思路 3. 定义链表节点 4. 实现方法 5. 源代码 MyLinkedList.java test.java 1. 概况 链表在逻辑上是连续的,在物理上不一定连续. 分类: ...

  3. Java 数据结构(链表LinkedList增删改查、数组Vector、获取Vector最大值、交换Vector两成员位置、栈的实现、压栈出栈实现反转、队列Queue)

    在链表(LinkedList)的开头和结尾添加元素 import java.util.LinkedList;public class Main {public static void main(Str ...

  4. java数据结构 - 单链表(腾讯面试题实现单链表反转)

    直接上实现代码 //单链表的反转public static void reverseList(HeroNode head){//如果当前链表为空,或只有一个节点,无需反转if (head.next = ...

  5. Java数据结构之链表、树、堆、图手写双向非循环链表

    数据结构.手写双向非循环链表 文章目录 数据结构.手写双向非循环链表 链表 1.链表的分类 2.链表的特点 二.手写双向非循环链表 2.1方法总结 2.2 环境搭建 2.3 add 添加结点 2.3. ...

  6. Java数据结构:链表

    1. 概述 链表是一种数据结构,在内存中通过节点记录内存地址而相互链接形成一条链的储存方式.链表的插入和删除都比较快,缺点是查找比较慢.除非需要频繁的通过下标来随机访问数据,否则在很多使用数组的地方都 ...

  7. 【Java数据结构】链表的增、删、返回指定位置元素(添加泛型)

    修改变量名称的小技巧 想要修改多个相同的变量名称,选中想要改名的变量,按alt+shift+R重构,可以一次更改多个相同变量名称 代码 Node.java package cn.hanquan.tes ...

  8. Java数据结构-认识链表

    文章目录 一.链表的概念及结构 1.链表的概念 2.链表的分类 二.单向不带头非循环链表 1.创建节点类型 2.头插法 3.尾插法 4.打印单链表 5.查找key是否在单链表中 6.得到单链表的长度 ...

  9. Java数据结构之链表

    目录 一.单链表 1.单链表的介绍和内存布局 2.单链表的添加和遍历 3.单链表的插入 4.单链表的删除 二.双向链表 1.添加节点 2.遍历节点 3.插入节点 4.删除结点 5.测试 三.单向环形链 ...

最新文章

  1. python mysql
  2. travis-ci自动部署_如何使用Travis CI部署(几乎)零恐惧的Cloud Foundry应用
  3. 2018程序员必备碎片化学习工具(年度精选)
  4. SmartSVN for Mac 使用说明
  5. CWnd的派生类-3、CDialog类
  6. android系统性能优化---(9)Android 绿色应用公约
  7. ARM处理器寄存器和汇编指令系统
  8. SES 之全局搜索小记
  9. 软件开发方法之敏捷开发,你用了么?
  10. 关于layui的日期和时间组件LayData时间选择器使用时一闪而过
  11. Atitit 学校模式之 天堂模式 目录 1.1. 宗旨,让学生们乐不思蜀 打造人间天堂 2 2. 组织结构 2 2.1. 娱乐事业部 2 2.2. 文艺事业部 2 2.3. 三大金山挖掘(教育 医
  12. word,wps设置页眉和页码
  13. 【牛客网】马三来刷题之数组单调和
  14. 依赖计算机英语作文,过度依赖电脑的危害的英文作文
  15. Mock.js数据模拟,rap2、postman可视化接口平台,Vue框架的接口链接应用
  16. 查看oracle执行计划方法( 一)
  17. linux上传网页文件大小,Apache启用GZIP压缩网页传输方法
  18. WTG: Windows10企业版中安装Docker
  19. linux下查找某文件/文件夹所在的位置
  20. pygame 教程翻译---- LGPL许可

热门文章

  1. springcloud 子项目怎么导入_Spring Cloud基础面试题大集合
  2. 怎么去除图像亮度对图像质量评价的影响_图像质量评估指标 SSIM / PSNR / MSE
  3. Springboot,SSM框架比较,区别
  4. RabbitMQ (一)基础概念
  5. 生物学专业_北京交通大学617生物化学20082011历年考研专业课真题汇编
  6. oracle 11.2.0.3 asm非rac双机,oracle11.2.0.4 rac asm启动故障
  7. 视频导切台控制说明:RGBLink MiniPro初步测试
  8. 2021年第十六届全国大学生智能汽车竞赛赛道铺设规范
  9. 信号与系统课程向学校教务科需要提交的资料
  10. LT1004CZ-2.5 参考电压源