【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. 后缀数组
相关推荐
心灵宝贝2 小时前
PyCharm Community 2024.2.3.exe 安装教程(详细步骤,附安装包下载)
ide·python·pycharm
sali-tec3 小时前
C# 基于halcon的视觉工作流-章29-边缘提取-亚像素
开发语言·图像处理·算法·计算机视觉·c#
屁股割了还要学4 小时前
【数据结构入门】堆
c语言·开发语言·数据结构·c++·考研·算法·链表
源代码•宸7 小时前
MySQL 索引:索引为什么使用 B+树?(详解B树、B+树)
数据结构·数据库·经验分享·b树·mysql·b+树·b-树
王小王-1238 小时前
基于Python的二手车价格影响因素研究【多种机器学习对比、线性回归、MLP、SVR、LightGBM】
python·机器学习·汽车·二手车价格预测·二手车价格影响·汽车数据分析
java1234_小锋9 小时前
一周学会Matplotlib3 Python 数据可视化-绘制饼状图(Pie)
开发语言·python·信息可视化
NEUMaple10 小时前
python爬虫(三)----Selenium
爬虫·python·selenium
阿群今天学习了吗11 小时前
“鱼书”深度学习进阶笔记(3)第四章
人工智能·笔记·python·深度学习·算法
IT猿手11 小时前
2025年最新原创多目标算法:多目标酶作用优化算法(MOEAO)求解MaF1-MaF15及工程应用---盘式制动器设计,提供完整MATLAB代码
算法·数学建模·matlab·多目标优化算法·多目标算法
Pi_Qiu_13 小时前
Python初学者笔记第二十二期 -- (JSON数据解析)
笔记·python·json