【python数据结构&算法篇】基本介绍

1. 写在前面

随着时代的发展。。。。算法开始,大致总结了一下,如下,应该够学几年了,还有新发现后续补充

2. python实现数据结构

2.1 python内置数据结构

  1. 列表
  2. 元组
  3. 字典
  4. 集合

2.2 线性表

2.2.1 字符串

2.2.2 栈

  1. 单调栈

2.2.3 队列

  1. 单调队列
  2. 循环队列
  3. 双向队列

2.2.4 链表

  1. 单向链表
  2. 双向链表
  3. 跳舞链(双向十字链表)
  4. 跳跃表

2.3 散列表

2.3.1 哈希表

  1. 计数
  2. 哈希函数
  3. 滚动哈希

2.4 树

2.4.1 二叉树

2.4.1.1 堆
2.4.1.2 二叉搜索树
2.4.1.3 平衡二叉树
  1. 红黑树
  2. AVL树
  3. 线段树
2.4.1.4 哈夫曼树
2.4.1.5 伸展树
2.4.1.6 可持久化线段树
2.4.1.7 主席树(Treap)

2.4.2 非二叉树

2.4.2.1字典树
2.4.2.2 B树
2.4.2.3 B+树
2.4.2.4 234树

2.5 图

2.5.1 深度优先搜索

  1. 回溯
  2. 递归
  3. 分治

2.5.2 广度优先搜索

  1. 拓补排序

2.5.3 有向图

  1. 强连通分量

2.5.4 无向图

  1. 双连通分量

2.5.5 回路

  1. 欧拉回路
  2. 哈米尔顿回路

2.6 并查集

  1. 最小生成树

2.7 树状数组

3. python算法

3.1 查找算法(枚举算法)

  1. 顺序查找
  2. 二分查找

3.2 排序算法

  1. 冒泡排序
  2. 选择排序
  3. 插入排序
  4. 希尔排序
  5. 快速排序
  6. 归并排序
  7. 计数排序
  8. 堆排序
  9. 桶排序
  10. 基数排序
  11. 平滑排序

3.3 动态规划

3.3.1 递推算法

3.3.2 线性DP

  1. 前缀和
  2. 前缀最值

3.3.3 状态压缩DP

3.3.4 记忆化搜索

3.3.5 博弈DP

3.3.6 区间DP

3.3.7 数位DP

3.3.8 最短路算法

  1. Dijkstra
  2. Bellman-Ford
  3. Folyed
  4. SPFA
  5. Dijkstra + Heap

3.4 贪心算法

3.5 双指针算法

  1. 滑动窗口
  2. 快慢指针

3.6 模拟算法

3.7 分治算法

3.8 字符串匹配算法

  1. 字典树
  2. KMP
  3. AC自动机
  4. BM算法
  5. 后缀数组
相关推荐
qq_417695053 小时前
机器学习与人工智能
jvm·数据库·python
无极低码3 小时前
ecGlypher新手安装分步指南(标准化流程)
人工智能·算法·自然语言处理·大模型·rag
漫随流水3 小时前
旅游推荐系统(view.py)
前端·数据库·python·旅游
软件算法开发3 小时前
基于海象优化算法的LSTM网络模型(WOA-LSTM)的一维时间序列预测matlab仿真
算法·matlab·lstm·一维时间序列预测·woa-lstm·海象优化
罗超驿4 小时前
独立实现双向链表_LinkedList
java·数据结构·链表·linkedlist
yy我不解释4 小时前
关于comfyui的mmaudio音频生成插件时时间不一致问题(一)
python·ai作画·音视频·comfyui
superior tigre4 小时前
22 括号生成
算法·深度优先
紫丁香5 小时前
AutoGen详解一
后端·python·flask
FreakStudio5 小时前
不用费劲编译ulab了!纯Mpy矩阵micronumpy库,单片机直接跑
python·嵌入式·边缘计算·电子diy