链表是有序的列表, 但是它在内存中是存储如下
1) 链表是以节点的方式来存储, 是链式存储
2) 每个节点包含 data 域, next 域: 指向下一个节点.
3) 如图: 发现链表的各个节点不一定是连续存储.
4) 链表分带头节点的链表和没有头节点的链表, 根据实际的需求来确定
? 单链表 (带头结点) 逻辑结构示意图如下
单链表的应用实例
使用带 head 头的单向链表实现 - 水浒英雄排行榜管理完成对英雄人物的增删改查操作
(1) 结构
- public class HeroNode {
- Integer id;
- String heroName;
- String nikeName;
- HeroNode next;
- }
节点信息
- public class HeroNode {
- Integer id;
- String heroName;
- String nikeName;
- HeroNode next;
- public HeroNode() {
- }
- public HeroNode(Integer id, String heroName, String nikeName, HeroNode next) {
- this.id = id;
- this.heroName = heroName;
- this.nikeName = nikeName;
- this.next = next;
- }
- @Override
- public String toString() {
- return "HeroNode{" +
- "id=" + id +
- ", heroName='" + heroName + '\'' +
- ", nikeName='" + nikeName + '\'' +
- ", next=" + next +
- '}';
- }
- }
单链表
- public class HeroLink {
- // 单链表的头节点, 头节点不要动, 不存放具体的数据
- HeroNode head = new HeroNode(0,null,null,null);
- }
一, 增
1不考虑顺序, 直接在链表最后插入
来源: http://www.bubuko.com/infodetail-3684213.html