当前位置: 首页 > news >正文

软件设计师——数据结构

本博文所有内容来自于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

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

哈希

 

越有序越慢

交叉越多比较越多


http://www.mrgr.cn/news/43304.html

相关文章:

  • Windows系统编程(三)进程与线程二
  • 如何在 PHP 中使用 array_unique 函数去重关联数组?
  • 玩具CPSC认证办理流程
  • 力扣10.5
  • MS-900认证:Microsoft 365 Certified: Fundamentals
  • 【FreeRTOS】移植教程与官方文档
  • Leecode刷题之路第十天之正则表达式匹配
  • 安卓AI女友项目之安卓AI虚拟数字人整合开发
  • 【深度学习】自动微分——Autodiff or Autograd?
  • 使用JavaScript写一个网页端的四则运算器
  • 3.JVM
  • AI 激活新势能,中小企业全媒体营销绽放无限可能
  • struct和C++的类
  • 关键字:static
  • 【RISCV指令集手册】向量扩展v1.0
  • 视频剪辑软件哪个好?四大视频剪辑软件揭秘
  • 瓶颈ing
  • MySQL--聚合查询、联合查询、子查询、合并查询(上万字超详解!!!)
  • 什么是编译型语言,什么是解释性语言?java属于哪种?
  • 第3篇:Linux权限维持----应急响应之权限维持篇