分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击http://www.captainbed.net

package live.every.day.ProgrammingDesign.CodingInterviewGuide.List;/*** 反转双向链表** 【题目】* 实现反转双向链表的函数。** 【要求】* 如果链表长度为N,时间复杂度要求为O(N),额外空间复杂度要求为O(1)。** 【难度】* 简单** 【解答】* 本题比较简单,做到代码一次成型,运行不出错即可。* 反转双向链表的函数如下,函数返回反转之后链表新的头节点。** @author Created by LiveEveryDay*/public class ReverseDoubleList {public static class DoubleNode {public int data;public DoubleNode pre;public DoubleNode next;public DoubleNode(int data) {this.data = data;}}public static DoubleNode reverseList(DoubleNode head) {DoubleNode pre = null;DoubleNode next = null;while (head != null) {next = head.next;head.pre = next;head.next = pre;pre = head;head = next;}return pre;}public static void main(String[] args) {DoubleNode node1 = new DoubleNode(1);DoubleNode node2 = new DoubleNode(2);DoubleNode node3 = new DoubleNode(3);DoubleNode node4 = new DoubleNode(4);DoubleNode node5 = new DoubleNode(5);node1.pre = null;node1.next = node2;node2.pre = node1;node2.next = node3;node3.pre = node2;node3.next = node4;node4.pre = node3;node4.next = node5;node5.pre = node4;node5.next = null;DoubleNode n = reverseList(node1);while (n != null) {System.out.printf("%d ", n.data);n = n.next;}}}// ------ Output ------
/*
5 4 3 2 1
*/

【简单】反转双向链表-Java相关推荐

  1. Java模拟一个简单的双向链表

    Java模拟一个简单的双向链表 1.链表结构 Node实体类代码: public class Node {public Object item;//存放数据的地方public Node next;// ...

  2. 双向链表(3) - 反转双向链表

    双向链表的反转过程,可以参考下面的例图. (a) 原始双向链表 (b) 反转后的双向链表 下面是一个用于反转双向链表的简单方法.所需要做的事情就是交换每个节点的前向指针和后向指针,然后调整链表的头指针 ...

  3. 文本文件 java_简单的用java实现读/写文本文件的示例

    简单的用java实现读/写文本文件的示例 更新时间:2008年07月26日 13:09:26   作者: 同时也展示了如果从输入流中读出来内容写入输出流中(仅限文本流) 三个例子可以独立存在,所以根据 ...

  4. 链表问题4——反转双向链表

    题目 实现反转双向链表的函数 要求 如果链表长度为N,时间复杂度要求为O(N),额外空间复杂度要求为O(1). 源码 public class Node{public int value;public ...

  5. 《LeetCode力扣练习》剑指 Offer 24. 反转链表 Java

    <LeetCode力扣练习>剑指 Offer 24. 反转链表 Java 一.资源 题目: 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点. 示例: 输入: 1-& ...

  6. 《LeetCode力扣练习》第206题 反转链表 Java

    <LeetCode力扣练习>第206题 反转链表 Java 一.资源 题目: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表. 示例 1: 输入:head = [1,2, ...

  7. 历史上最简单的一道Java面试题,但无人能通过

    作者:方志宏 来源:zhuanlan.zhihu.com/p/57859872 这可能是历史上最简单的一道java面试题了. 题目很简单,完成代码,判断一个整数是否是奇数: public boolea ...

  8. java http服务端例子_简单的用 Java Socket 编写的 HTTP 服务器应用

    /*** SimpleHttpServer.java*/importjava.io.*;importjava.net.*;importjava.util.StringTokenizer;/*** 一个 ...

  9. 菜鸟学Java(六)——简单验证码生成(Java版)

    转载自  菜鸟学Java(六)--简单验证码生成(Java版) 验证码大家都知道,它的作用也不用我多说了吧.如果不太清楚请参见百度百科中的解释,一般验证码的生成就是随机产生字符(数字.字母或者汉字等) ...

最新文章

  1. java 使用webmagic 爬虫框架爬取博客园数据
  2. 【codeforces 742A】Arpa’s hard exam and Mehrdad’s naive cheat
  3. codeforces Educational Codeforces Round 49 (Rated for Div. 2) C题
  4. 最快最新最详细的IT电子书
  5. java学习笔记2022.2.11
  6. 浙江金融职业学院计算机一级,浙江金融职业学院全景-360度,720度,高清全景地图-expoon网展...
  7. 第十二届蓝桥杯青少年python组 第1-3题 C++实现
  8. Python3 从零单排7_模块ossys
  9. Halcon产品描述
  10. 使用Nexus搭建Maven仓库
  11. Drupal 7.17 发布,专业的 CMS 内容管理系统
  12. java opencv教程_史上最全 java 集成 opencv 教程
  13. DAS-DVS分布式光纤振动传感-发展现状与未来趋势分析(华为光纤传感新产品Huawei OptiXsense EF3000)
  14. 财务管理系统-数据库模块
  15. JS移动DOM节点,将某节点下所有子节点移动(剪切)到另一个节点下。新手很容易踩的坑!
  16. 关于笔记本连接显示器检测不到的问题(NoVideoInput)
  17. formality 命令/变量的使用及各种设置
  18. 014基于深度学习的脑电癫痫自动检测系统-2018(300引用)
  19. event事件坐标详解(clientx, offsetx, screenX等)
  20. 【Unity】UI或3D场景自动设置渐变色背景

热门文章

  1. C语言 随机起名和记录
  2. 单独聊一聊CTWing软硬交互
  3. eBPF/XDP实现Conntrack功能
  4. idea 2018.2破解激活
  5. File和MultipartFile互转
  6. 开源托管平台GitHub和git分支
  7. android网购功能,网购Android App购物车点击动画实现详解
  8. 等额本息还款法贷款利息计算方法及还款计划
  9. rstudio找不到r低版本_R学习笔记-安装R和RStudio,注意RStudio的版本需要与操作系统版本匹配...
  10. 手机充电原理分析及问题总结