
数据结构
文章平均质量分 82
常见的数据结构类型
ZhengXinTang
习重要! 学而实习之, 才叫学习!
只学而不习, 不实践, 这叫本末倒置, 丢了大头顾小头;
因缘际会,所有巧合即为 和合事物;
当一个人悄悄的在反省时,努力时,改过时, 命运的齿轮便被他转动了。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面向对象的三大特性与类图
Object-oriented programming (OOP) is a paradigm centered around the concept of objects, which can contain data and code to manipulate that data. The three major characteristics of object-oriented programming are encapsulation, inheritance, and polymorphism原创 2024-06-16 15:03:13 · 931 阅读 · 0 评论 -
单调队列与优先级队列
A优先级队列是一种更通用的数据结构,允许添加具有优先级的元素。具有最高优先级的元素(取决于实现)始终位于队列的前面,并且可以在恒定的时间内访问或删除。原创 2024-06-15 10:25:21 · 422 阅读 · 0 评论 -
螺旋矩阵的思想
lc59: 螺旋矩阵, 解题思路。原创 2024-05-25 16:58:25 · 343 阅读 · 0 评论 -
ACM 的代码编码示例
python 列表 或 数组 中 使用 pop() 函数时,默认 pop 时, 弹出的是数组中的最后一个元素;原创 2024-05-11 16:41:33 · 424 阅读 · 0 评论 -
数据结构 leetcode 刷题顺序
1. 算法性能分析主要 分 时间复杂度 和空间复杂度 两大部分;自己查询;2. 数组3. 链表4. 哈希表5. 字符串6. 栈与 队列7. 二叉树 专题8. 回朔算法9. 贪心算法10. 动态规划原创 2022-05-02 21:42:18 · 929 阅读 · 0 评论 -
概念(一)hash table _ 哈希表 (上)
哈希表是根据关键码的值而直接进行访问的数据结构。白来讲其实数组就是一张哈希表。哈希表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素,如下图所示:哈希表能解决什么问题呢,一般哈希表都是用来快速判断一个元素是否出现集合里。例如要查询一个名字是否在这所学校里。要枚举的话时间复杂度是O(n),但如果使用哈希表的话, 只需要O(1)就可以做到。我们只需要初始化把这所学校里学生的名字都存在哈希表里,在查询的时候通过索引直接就可以知道这位同学在不在这所学校里了。将学生姓名映射到哈希表.转载 2022-04-15 10:14:19 · 212 阅读 · 1 评论 -
概念(一)hash table _ 哈希表(中)
1. 哈希思想哈希表 hash table 也称散列表, 是由数组演化而来, 底层依赖 数组 支持按照下标快速 访问元素的特性;1.1 hash 原理哈希表利用的是 数组按照下标访问元素时, 其时间复杂度为 O(1) 这样的特性;实际操作时: 通过哈希函数, 将元素的键值映射为下标, 然后, 将对应的数据存储在 数组中 对应的下标的位置;当按照键值 查询元素时, 使用同样的哈希函数, 将键值转化为 数组下标, 从数组中 这个下标对应的位置取数据。作用, 可以快速 访问表中的某个 元素,原创 2022-03-08 20:58:25 · 621 阅读 · 0 评论 -
双端队列中的单调队列
1. 双端队列普通队列是限制仅在队尾进行插入,在队头进行删除操作的线性表,队列的插入叫做入队列,队列的删除叫做出队列。而双端队列则是放开了这个限制,在队头和队尾两端都可以进行入队和出队操作的队列。这么细看,其实对于队头或者队尾端,相当于是一个栈,后进的先出。双端队列看上去这么的像栈和队列的结合体。而有些时候,双端队列中还有受限的双端队列:一个是输出受限的双端队列,另一个是输入受限的双端队列。2. 输出受限的双端队列输出受限的双端队列是:允许在一端进行入队和出队,但在另一端只允许入队的双端队列原创 2022-03-22 21:37:51 · 645 阅读 · 0 评论 -
KMP 字符串匹配算法笔记_ python 实现
0 引言:KMP 使用 用于, 在 文本字符串 s 中, 找出模式串 pattern 出现的位置;举例:在文本串:aabaabaafa 中查找是否出现过一个模式串:aabaaf,并返回在字符串中开始 出现模式串 pattern 的 下标位置;KMP的主要贡献思想:在 模式串中 构造出一个 next 数组, 该数组记录了 模式串中 每个是当出现字符串不匹配时,可以知道一部分之前已经匹配的文本内容,可以利用这些信息避免从头再去做匹配了。...原创 2022-03-13 18:48:52 · 1542 阅读 · 1 评论 -
(四)二叉树深度优先遍历的迭代实现
(四)二叉树的深度优先遍历(前中后序)的迭代实现原创 2022-03-31 18:26:52 · 676 阅读 · 0 评论 -
(二)二叉树的遍历方式
1. 二叉树的主要遍历方式大的框架上主要有, 纵向 和 横向 两种:深度优先遍历: 先往深处走, 遇到叶子节点后在往回走;广度优先 遍历: 一层 一层的 遍历;这两种遍历方式 也是 图论中 最基本的两种遍历方式;那么从深度优先遍历和广度优先遍历进一步拓展,才有如下遍历方式:深度优先遍历前序遍历(递归法,迭代法)中序遍历(递归法,迭代法)后序遍历(递归法,迭代法)广度优先遍历层次遍历(迭代法)2. 二叉树的深度优先遍历在深度优先遍历中:有三个顺序,前中后序遍原创 2022-03-24 21:39:44 · 821 阅读 · 0 评论