实例讲解-单向列表的实现(1)
2023-09-14 08:58:42 时间
实例要求
在数据结构中,经常看到一个基本概念,对于一个链表的实现基本都是基于引用数据类型的操作。
如果要想设计一个链表,则肯定要设计一个链表的节点类。在此类中必须有一个属性可以保存下一个节点的引用地址。
根据此概念,设计一个节点类。以String为数据保存内容。
class Node{ // 定义节点类 private String data ; // 保存节点内容 private Node next ; // 表示保存下一个节点 public Node(String data){ // 通过构造设置节点内容 this.data = data ; // 设置内容 } public void setNext(Node next){ this.next = next ; // 设置下一个节点 } public Node getNext(){ // 取得下一个节点 return this.next ; } public String getData(){ return this.data ; // 取得节点的内容 } }; public class LinkDemo01{ public static void main(String args[]){ Node root = new Node("火车头") ; // 定义根节点 Node n1 = new Node("车厢-A") ; // 定义第一个车厢(第一个节点) Node n2 = new Node("车厢-B") ; // 定义第二个车厢(第二个节点) Node n3 = new Node("车厢-C") ; // 定义第三个车厢(第三个节点) root.setNext(n1) ; // 设置火车头的下一个节点是第一个车厢A n1.setNext(n2) ; // 设置第一个车厢的下一个节点是第二个车厢 n2.setNext(n3) ; // 设置第二个车厢的下一个节点是第三个车厢 printNode(root) ; // 从头开始输出,因为printNode()方法用static修饰了,所以才可以直接调用, } public static void printNode(Node node){ // 输出节点 System.out.print(node.getData() + "\t") ; // 输出节点的内容 if(node.getNext()!=null){ // 判断此节点是否存在下一个节点 printNode(node.getNext()) ; // 向下继续输出 } } };
总结:
本程序中,所有的关系都是手工添加的,如果要想程序变得有意义,则需要为其加入一个操作的封装。
相关文章
- RPC协议及其python实例[通俗易懂]
- 面试官问:静态变量、实例变量在JVM内存区域是怎么布局的?线程安全吗?
- 实例讲解临时处理去重 80w 数据时夯死现象
- 类方法和类实例的区别详解编程语言
- 停止Oracle实例:必要的准备步骤(oracle停实例)
- 解析yahoo邮件用phpmailer发送的实例
- JAVA实现多线程的两种方法实例分享
- Android实现三级联动下拉框下拉列表spinner的实例代码
- 解读ASP.NET密码强度验证代码实例分享
- javascript打印输出json实例
- python模块restful使用方法实例
- Java实现按中文首字母排序的具体实例
- java实现合并两个已经排序的列表实例代码
- Select标签下拉列表二级联动级联实例代码
- 在CoreOS上搭建一个WordPress程序操作实例
- PHP中ini_set与ini_get用法实例
- C语言双向链表的表示与实现实例详解
- Python中对列表排序实例
- php+mysql数据库查询实例
- Python3基础之list列表实例解析
- Lua进阶教程之闭包函数、元表实例介绍