python 数据结构与算法知识图

发布时间 2023-12-20 14:02:10作者: 刘天睿

1.算法思想:递归、分治(归并排序、二分查找、快速排序)、贪心(贪心策略排序+当前最优)、动态规划(最优子结构+递推式)、回溯(解空间:排列树+子集树、深度搜索+剪枝)、分支限界(解空间:排列树+子集树、广度搜索+剪枝))

2.排序算法:(low:冒泡、插入、选择;mid:快排、归并、堆排,其他:桶排序、基排序、基数排序)

3.数据结构及其相关算法:

①线性结构:栈、队列、链表、跳表;

②二叉树:与树有关的算法,一般包含搜索、插入、删除,二叉搜索树bst、avl 树(高度差为1,调整包括左旋、右旋、先左后右、先右后左)、红黑树(满足黑色节点和红色节点的性质);

   多叉树:b树,用于磁盘或者数据库的存储与搜索;

③图结构:采用python字典结构(散列表)建图,包含不加权的广度优先搜索、狄克斯特拉加权图寻找最短到达路径;

④散列表:哈希,哈希寻址,哈希冲突;

⑤数论:gcd求最大公约数、rsa加密解密算法;