系统学习数据结构和算法
数据结构是数据的存储结构,算法是操作数据的一组方法。
主要数据结构和算法:
1、复杂度分析
包括空间复杂度和时间复杂度分析。其中,时间复杂度包括:最好时间复杂度、最坏时间复杂度、平均时间复杂度、均摊时间复杂度。
2、线性表
2.1 数组
2.2 链表
包括单链表、双向链表、循环链表、双向循环链表、静态链表
2.3 栈
顺序栈、链式栈
2.4 队列
普通队列、双端队列、阻塞队列、并发队列、阻塞并发队列
3、散列表
包括散列函数、冲突解决(链表发和开放寻址法或其他方法)、动态扩容、位图
4、树
4.1 二叉树
包括平衡二叉树、二叉查找树、平衡二叉查找树(AVL树和红黑树)、完全二叉树、满二叉树
4.2 多路查找树
B树、B+树、2-3树、2-3-4树
4.3 堆
小顶堆、大顶堆、优先级队列、斐波那契队列、二项堆
4.4 其他
树状数组、线段树
5 图
图的存储:邻接矩阵、邻接表
拓扑排序、最短路径、关键路径、最小生成树、二分图、最大流
6、算法基本思想
贪心算法、分治算法、动态规划、回溯算法、枚举算法
7、排序
O(n^2) :冒泡排序、插入排序、选择排序、希尔排序
O(nlogn):归并排序、快速排序、堆排序
O(n):计数排序、基数排序、桶排序
8、搜索
深度优先搜索、广度优先搜索、A*启发式搜索
9、查找
线性表查找、树结构查找、散列表查找
10、字符串匹配
朴素、KMP、Robin-Karp、Boyer-Moore、AC自动机、Trie、后缀数组
11、其他
数论、计算几何、概率分析、并查集、拓扑网络、矩阵运算、线性规划
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)