博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
4.单链表的创建和建立
阅读量:5891 次
发布时间:2019-06-19

本文共 1376 字,大约阅读时间需要 4 分钟。

public class LinkList {    public Node head;    public Node current;//向链表中添加数据    public void add(int data) {//判断链表为空的时候                if (head == null) {
//如果头结点为空,说明这个链表还没有创建,那就把新的结点赋给头节点 head = new Node(data); current = head; } else { current.next = new Node(data);//创建新的结点,放在当前节点的后面(把新的节点和链表进行关联) current = current.next;//把链表的当前索引向后移动一位,此步操作完成之后,current结点指向新添加的那个结点 } } //方法:遍历链表(打印输出链表。方法的参数表示从节点node开始进行遍历 public void print(Node node) { if (node == null) { return; } current = node; while (current != null) { System.out.println(current.data); current = current.next; } } class Node { //注:此处的两个成员变量权限不能为private,因为private的权限是仅对本类访问 int data;//数据域 Node next;//指针域 public Node(int data) { this.data = data; } } public static void main(String[] args) { LinkList list = new LinkList(); //向LinkList中添加数据 for (int i = 0; i < 10; i++) { list.add(i); } list.print(list.head);// 从head节点开始遍历输出 }}

运行结果:

0

1
2
3
4
5
6
7
8
9

上方代码中,这里面的Node节点采用的是内部类来表示。使用内部类的最大好处是可以和外部类进行私有操作的互相访问。

 注:内部类访问的特点是:内部类可以直接访问外部类的成员,包括私有;外部类要访问内部类的成员,必须先创建对象。

 为了方便添加和遍历的操作,在LinkList类中添加一个成员变量current,用来表示当前节点的索引。

这里面的遍历链表的方法中,参数node表示从node节点开始遍历,不一定要从head节点遍历。

 

转载地址:http://ydfsx.baihongyu.com/

你可能感兴趣的文章
Dagger2 中的 Scope
查看>>
4K超清,2500万人在线,猫晚直播技术全解读
查看>>
比特币现金是世界上最好货币的十大理由
查看>>
redis
查看>>
批量删除实现
查看>>
thinkphp_邮箱找回密码_已迁移
查看>>
oracle 启动归档模式
查看>>
MySQL读写分离实验
查看>>
如何让你的WEB项目有类似APP推送功能_已迁移
查看>>
shell中;;、&、&&之间的区别
查看>>
怎么样才能成为一个软件工程师开发高手?
查看>>
SQL_Server基本语法
查看>>
SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)
查看>>
Hadoop源代码分析(*IDs类和*Context类)
查看>>
钢丝流-BISU的战斗哲学
查看>>
struts2中的自定义拦截器
查看>>
解决opensips启动时出现PID file /var/run/opensips.pid does not exist 的错误
查看>>
33.Azure创建自动伸缩虚拟机规模集(上)
查看>>
Linux基础知识之命令的语法通用格式
查看>>
通过模板批量新建虚拟机,并定义好自定义规范及虚拟机名称和主机名
查看>>