- 博客(4)
- 收藏
- 关注
原创 栈数据模型学习
一、栈的抽象数据类型 栈是一种用于存储数据的简单数据结构,有点类似链表或者顺序表(统称线性表),栈与线性表的最大区别是数据的存取的操作,我们可以这样认为栈(Stack)是一种特殊的线性表,其插入和删除操作只允许在线性表的一端进行,一般而言,把允许操作的一端称为栈顶(Top),不可操作的一端称为栈底(Bottom),同时把插入元素的操作称为入栈(Push),删除元素的操作称为出栈(Pop)。若栈中没有任何元素,则称为空栈,栈的结构如下图:二、栈的代码实现public class ArraySta
2022-03-24 11:37:01
566
1
原创 双向链表java实现
一、双向链表简介1、单链表的缺陷单链表只能从头结点开始访问链表中的数据元素,如果需要逆序访问单链表中的数据元素将极其低效。2、双向链表的结构双链表是链表的一种,由节点组成,每个数据结点中都有两个指针,分别指向直接后继和直接前驱。3、双向链表类的基本结构class HeroNode2 { //编号 public int no; //名称 public String name; //昵称 publ
2022-03-24 11:27:58
911
原创 队列原理以及实现
1.队列的原理像栈一样,队列也是一种线性表,它的特性是先进先出,插入在一端,删除在另外一端,就像排队一样,刚来的人入队(push)要排在队尾(rear),每次出队的都是在队首(front)的人。1,描述了一个队列模型。队列(Queue)与栈一样,是一种线性存储结构,它具有如下特点: 队列中的数据元素遵循“先进先出”(First In First Out)的原则,简称FIFO结构。 在队尾添加元素,在队头删除元素。 1.2 队列的相关概念队列的相关概念: 队头
2022-03-24 11:18:58
724
原创 链表的基本原理以及java实现
一:单向链表基本介绍链表是一种数据结构,和数组同级。比如,Java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。下面对单向链表做一个介绍。单向链表是一种线性表,实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它能知道下一个结点的存储位置。由N各节点(Node)组成单向链表,每一个Node记录本Node的数据及下
2022-03-24 11:16:12
357
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人