![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 59
数据结构 学习笔记 知识整理
星辰大海-H
学海无涯
展开
-
循环队列(Typescript/JavaScript)
循环队列的Typescript实现export default class RoundQueue<V> { get [Symbol.toStringTag]() {return 'RoundQueue'} [Symbol.toPrimitive](hint: string): unknown { if (hint === 'string') return `RoundQueue: [ ${this._queue} ]`; else throw n原创 2022-03-24 14:33:54 · 972 阅读 · 0 评论 -
栈(数据结构)
栈栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向栈顶加入元素的操作被称为进栈、入栈或压栈。从栈顶取出元素的操作被称为出栈或退栈。栈的代码实现我们使用数组作为栈的实现基础,栈底默认设置为0;对于栈顶指针,我们可以定义它的功能为指向栈顶元素的指针(索引)。因此栈的几种特殊状态可以表示为:栈空:栈顶等于-1。栈满:栈顶等于n-1,其中n为数组的长度。那么栈的Java实现可以为:packag原创 2021-04-09 20:13:45 · 283 阅读 · 0 评论 -
队列(数据结构)
队列队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。顺序队列建立顺序队列结构必须为其静态分配或动态申请一片连续的存储空间,并设置两个指针进行管理。一个是队头指针front,它指向队头元素;另一个是队尾指针rear,它指向下一个入队元素的存储位置。顺序队列会存在存储空间的浪费,因为无论是头指针还是尾指针,他们都只能不断向后移动,原创 2021-04-09 20:08:28 · 721 阅读 · 0 评论 -
树与二叉树(数据结构)
树树型结构是一类非常重要的非线性数据结构,每颗树都有一个根结点。每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树。相关概念叶结点或终端结点:度为0的结点称为叶结点;结点的度:一个结点含有的子结点的个数称为该结点的度;树的度:一棵树中,最大的结点的度称为树的度;结点的层次:从根开始定义起,根为第1层,根的子结点为第2层,以此类推;树的高度或深度:定义一棵树的根结点层次为1,其他结点的层次是其父结点层原创 2021-04-09 20:01:18 · 146 阅读 · 0 评论