自己动手,丰衣足食。Java中的确有相当丰富的类库来支持日常的开发,但在某些场景中往往又被这些数据特有的结构所限制。那么怎么办呢?现在将手把手带你设计一个新的数据结构-链表,享受创造的乐趣吧!
最美丽的往往是神秘的未知,创造链表并逐一实现其增删改查的基本功能更能让你体会到这一点。不要担心没办法做到,在这里,你将一步步完成链表的创建,通过两则案例巩固所学,彻底掌握自定义数据结构的方法。
升华数组-使用链表灵活整理数据
数组的存在的确便利了大量的数据处理,但其有一个严重的限制是长度必须固定。本节将带领读者“自定义”数据结构,使用链表达到和数组一样的效果。
【本节目标】
通过阅读本节内容,你将了解到链表这一概念,知晓在开发过程中可以自己来编写数据结构来解决各种复杂的数据要求,学会定义链表结构,并实现简单的存取代码。
要操作先有数-教你增加链表数据
本节结合代码详解了实现链表结构中实现数据增加操作的方法,并在主方法中进行了调用验证。
【本节目标】
通过阅读本节内容,你将掌握实现添加链表数据的方法,对链表中Node节点应该具备的基本操作有进一步的理解。
改数需备案-记录链表数据量
本节结合代码带领读者通过在类中添加计数成员count来记录链表长度,实现size()方法来返回count值。
【本节目标】
通过阅读本节内容,你将学会通过在每次添加新节点时使count自增实现链表长度的记录,借此实现size()方法供给调用方获取链表长度。
教你实现链表判空与取值方法
有了增加方法和计数方法,那么如何直观地判断链表内有没有数据呢,本节将带读者实现isEmpty()方法进行判空操作、实现toArray()方法获取链表内所有数据。
【本节目标】
通过阅读本节内容,你将学会实现isEmpty()和toArray()方法,为链表对象提供直接判断是否为空以及获取链表数据的方法,进一步完善链表类的相关功能。
速度了解神奇的索引操作
本节带领读者实现了根据索引取数据和修改数据的操作,并对这些操作进行了简单的复杂度分析。
【本节目标】
通过阅读本节内容,你将学会在链表中通过上一节中提到的foot属性实现对指定位置数据进行取值和改值的操作。
链表数据“暗杀记”
简介: 本节将为读者展示如何实现查询一个数据在链表中是否存在以及如何去删除一个数据或全部数据的功能。
【本节目标】
通过阅读本节内容,你将掌握链表查询方法contains()与删除方法remove()、清表方法clean()的实现,对单向链表的所有基本功能拥有初步的掌握与理解。
链表实战之宠物商店
本节结合在宠物商店出售各种宠物的实际情景,制定宠物、宠物店的标准并进行实现,结合链表实现对商店内宠物的动态数据操作。
【本节目标】
通过阅读本节内容,你将通过编码实现宠物商店的情景,进一步复习接口的相关知识,进一步掌握链表的结构与功能实现以及使用链表解决实际问题的能力。
链表实战之超市购物车
本节结合在超市购买商品,商品放入购物车的实际情景,制定商品、购物车与收银台的标准并完成实现,基于链表来对这一复杂情景内的各种实体进行处理。
【本节目标】
通过阅读本节内容,你将借助链表这一工具,实现对更加复杂的现实情景的数据处理,进一步掌握链表的各类定义、实现以及运用手段。