数据结构
时间:2019-06-18
本文章向大家介绍数据结构,主要包括数据结构使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
/** * 单链表逆反算法 * @author 15735400536 * */ public class LinkedTest { public static void main(String[] args) { Node head = new Node(0); Node node1 = new Node(1); Node node2 = new Node(2); Node node3 = new Node(3); head.setNext(node1); node1.setNext(node2); node2.setNext(node3); /** * 打印正序单链表 */ Node next = head; while(null != next) { System.out.print(next.getData() + " => "); next = next.getNext(); } head = reversal(head); System.out.println("\n*****************************"); while(null != head) { System.out.print(head.getData() + " => "); head = head.getNext(); } } /** * 单向链表节点反转方法 * @param node * @return * 描述:1. 先判断该链表是否只有node一个节点,是,返回节点 * 2.否,递归 reversal()方法,返回最后一个节点,即逆向链表的head */ public static Node reversal(Node node) { //System.out.println("\n" +node.getData() + " => " + node.getNext()); /** * 先判断该节点是为单节点 */ if(null == node || null == node.getNext()) { return node; } //逆向链表head => 3 Node newNode = reversal(node.getNext()); //获得下一个节点,设置下一个节点的下一个节点为前一个节点 node.getNext().setNext(node); node.setNext(null); return newNode; } } class Node { /** * 该节点存储的数据 */ private Object data; /** * 下一个节点 */ private Node next; public Object getData() { return data; } public Node getNext() { return next; } public void setData(Object data) { this.data = data; } public void setNext(Node next) { this.next = next; } public Node(Object data) { this.data = data; } }
原文地址:https://www.cnblogs.com/mxh-java/p/11044656.html
- 总结---4
- 双飞翼布局的改造 box-sizing和margin负值的应用
- CAICT:2017年互联网平台治理白皮书
- 总结---5
- Spark源码分析 之 Driver和Excutor是怎么跑起来的?(2.2.0版本)
- 英男子与机器人配合演出求婚成功 专家呼吁AI聊天机器人少卖萌
- DOM事件第二弹(UIEvent事件)
- 双向链表
- 通用网页调用本地应用程序方案(windows平台)
- vue、rollup、sass、requirejs组成的vueManager
- 顺序栈的实现和两栈共享空间
- 掌握这几个工具,做微信营销活动才能高大上!
- requirejs、vue、vuex、vue-route的结合使用,您认为可行吗?
- 日报:万达网科员工遭集体裁员,首例“花呗”套现案宣判
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- PHP-FPM和Nginx的通信机制详解
- PHP PDOStatement::columnCount讲解
- PHP中上传文件打印错误错误类型分析
- Laravel如何创建服务器提供者实例代码
- PDO::quote讲解
- php intval函数用法总结
- Python Selenium模块安装使用教程详解
- Python selenium模块实现定位过程解析
- Django ORM判断查询结果是否为空,判断django中的orm为空实例
- ThinkPHP框架整合微信支付之JSAPI模式图文详解
- 一文掌握PHP Xdebug 本地与远程调试(小结)
- PHP生成随机码的思路与方法实例探索
- CI框架教程之优化验证码机制详解【验证码辅助函数】
- ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
- PHP中str_split()函数的用法讲解