软件设计师——数据结构

本博文所有内容来自于B站up主zst_2001


目录

时间复杂度

常规数据结构

链表

[栈与队列 ​编辑](#栈与队列 编辑)

串

数组

树

卡特兰数:

平衡二叉树

哈夫曼

图

AOV

排序

顺序

折半

哈希


时间复杂度


常规数据结构

链表

栈与队列

串

找i位置前面的字符串,看前后缀,最长相等的长度+1即可 ,但不能同时又第一个和最后一个

数组

下三角矩阵的公式就是M**((i*(i+1))/2+j+1)**

对角矩阵如果是从(0,0)开始的话,公式就是2i+j+1

对角矩阵如果是从(1,1) 开始的话,公式就是2i+j-2

因为2(i-1)+(j-1)+1 = 2i+j-2

上三角的计算公式是:( j*(j+1)/2+i+1 )

树

卡特兰数:

平衡二叉树

:二叉树任意一个结点的左右子树的高度差不能大于1

总的节点个数是 2n - 1

18,32,4,8,12,26

5,24,8,17,34,4,13

哈夫曼

压缩比 = (等长编码 - 哈夫曼编码)/ 等长编码

等长编码,看几位,比如有5个数据,那么至少要有3为比特位才能表示,因为2^2 = 4<5, 2^3=8>5

图

度数 = 总边数*2

广度优先遍历也是一样的

AOV


排序

顺序

折半

折半查找比较最多的次数是 logN的下界+1

要么小大小大,大小大小交替出现,要么就顺序出现

哈希

越有序越慢

交叉越多比较越多

相关推荐
志尊宝1 小时前
Vue3 零基础每日笔记(073):keep-alive 页面缓存实战——列表页返回不丢状态
vue.js·笔记·缓存·#vue #前端 #前端开发·#javascript·#vue.js
禾小西3 小时前
Redis 数据结构:快速的 Redis 有哪些慢操作?
数据结构·数据库·redis
weixin_448119943 小时前
Datawhale Easy Data × AI:笔记1 已重做,看新的笔记
笔记
H.莓飛4 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
要开心吖ZSH4 小时前
MySQL 慢 SQL 排查操作手册-个人笔记版
java·笔记·sql·mysql·慢查询
好想像大佬一样能够ak所有4 小时前
Leetcode35.搜索插入位置
数据结构·算法·leetcode
咖啡忍者5 小时前
【SAP】程制造生产计划PP-PI(Production Planning for Process Industries)
笔记
chenbingjie_c5 小时前
C++ STL 适配器:stack & queue,从 vector/list 到 deque 深度解析
数据结构·c++
Titan20246 小时前
MySQL索引学习笔记
笔记·学习·mysql
zhangrelay6 小时前
Arduino-MEGA-ESP单片机理论课笔记02-硬件-2026
笔记·单片机·嵌入式硬件