【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. 后缀数组
相关推荐
rayufo4 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
数研小生4 小时前
构建命令行单词记忆工具:JSON 词库与艾宾浩斯复习算法的完美结合
算法·json
芒克芒克4 小时前
LeetCode 题解:除自身以外数组的乘积
算法·leetcode
Python 老手5 小时前
Python while 循环 极简核心讲解
java·python·算法
@Aurora.5 小时前
优选算法【专题九:哈希表】
算法·哈希算法·散列表
爱看科技5 小时前
微美全息(NASDAQ:WIMI)研究拜占庭容错联邦学习算法,数据安全与隐私保护的双重保障
算法
qq_417129255 小时前
C++中的桥接模式变体
开发语言·c++·算法
开源技术6 小时前
如何将本地LLM模型与Ollama和Python集成
开发语言·python
weixin_437044646 小时前
Netbox批量添加设备——堆叠设备
linux·网络·python
我有医保我先冲6 小时前
AI 时代 “任务完成“ 与 “专业能力“ 的区分:理论基础、行业影响与个人发展策略
人工智能·python·机器学习