数据结构与算法
数据结构与算法
颹蕭蕭
这个作者很懒,什么都没留下…
展开
-
计算两个矩形的公共面积
不知道有没有问题,先贴这rec1 = [(x1, y1), (x2, y2)] # 左下右上rec2 = [(x3, y3), (x4, y4)]def area(rec1, rec2): if rec1[0][0] > rec2[1][0] or rec1[1][0] < rec2[0][0] or rec1[0][1] > rec2[1][1] or rec1[1][1] < rec2[0][1]: return 0 sorted_x = so原创 2020-09-13 23:12:54 · 1642 阅读 · 0 评论 -
满K叉树的叶子节点数有什么特点?
满 K 叉树中的节点要么是叶子结点,要么有 kkk 个子节点满 K 叉树的叶子结点数 mmm 满足:(m−1)%(k−1)=0(m-1) \% (k-1) = 0(m−1)%(k−1)=0以3叉树为例:容易观察:假设初始状态如蓝框所示,每当增加新的叶子节点,必然需要把一个叶子结点变成中间节点,再增加新的 kkk 个叶子结点,所以算下来新增了 k−1k-1k−1 个叶子结点。所以,满 kkk 叉树的叶子结点数 mmm 必然是如下等差数列的一项:k,2k−1,3k−2,…,k+n(k−1).原创 2020-07-27 13:44:02 · 3104 阅读 · 0 评论 -
alpha-belta 剪枝实现棋类AI ——Tic-Tac-Toe
minimax,alpha-beta剪枝原理,TIC-TAC-TOE原创 2020-01-04 11:40:54 · 1629 阅读 · 0 评论 -
算法题:击鼓传花
击鼓传花题解原创 2020-03-19 13:43:47 · 3301 阅读 · 0 评论 -
编辑距离(Edit Distance)
动态规划计算编辑距离原创 2020-03-17 19:41:41 · 3737 阅读 · 0 评论 -
最长公共子序列(Longest Common Subsequence)
最长公共子序列(LCS)是比较两个符号序列相似性时很常用的方法。比如在文章查重方面,比较一下公共部分的占比就可以判定两篇文章有没有抄袭。原创 2020-03-03 23:29:29 · 1836 阅读 · 0 评论 -
python 数据结构与算法——分治法
主定理分治法的核心是主定理分治法举例二分查找归并排序、快速排序等等原创 2020-01-15 16:29:00 · 1552 阅读 · 0 评论 -
python 数据结构与算法——动态规划
待续原创 2020-01-15 15:18:58 · 1364 阅读 · 0 评论 -
python 数据结构与算法——贪心算法
区间调度原创 2020-01-15 14:46:40 · 1597 阅读 · 0 评论 -
python 数据结构与算法——Huffman编码
目标:出现频率越高的字符编码的长度越短。步骤:1. 统计字符(词)频率,例如;2. 依次将频数最小的两个根节点合并,新的根节点记录两个子节点的频数和,只剩下一个根节点;3. 计算每个叶子节点的 huffman 编码;原创 2020-01-14 15:35:59 · 1784 阅读 · 1 评论 -
python 数据结构与算法——字符串匹配
文章目录字符串匹配暴力法Robin-Karp 字符串匹配有限状态自动机KMP 算法Boyce-Moore 算法后缀树字符串匹配问题描述:有文本 TTT,长度为 nnn;有模板(子串) PPP,长度为 mmm,检测文本 TTT 是否包含子串 PPP这个函数在 c++ 中实现为 strstr暴力法时间复杂度 O(n×m)O(n\times m)O(n×m)def strstrBruteFo...原创 2020-01-13 22:34:03 · 1485 阅读 · 0 评论 -
找出数组第k小的元素
k smallest,partition 方法原创 2020-01-12 16:23:03 · 1678 阅读 · 0 评论 -
判断数组元素是否有重复
时间复杂度是 O(n), 空间复杂度为 O(1) 的算法原创 2020-01-12 14:33:12 · 1820 阅读 · 0 评论 -
python 数据结构与算法——搜索(查找)
线性搜索、二分搜索、插值搜索原创 2020-01-12 13:12:54 · 1607 阅读 · 2 评论 -
python 数据结构与算法——排序
冒泡排序,选择排序,插入排序,希尔排序,归并排序,堆排序,快排, 树排序,计数排序,基数排序,桶排序原创 2020-01-11 15:15:39 · 1417 阅读 · 0 评论 -
python 数据结构与算法——图
妈耶,这块内容也太多了,以后再写原创 2020-01-10 22:26:37 · 1313 阅读 · 0 评论 -
python 数据结构与算法——并查集
并查集的原理及 python实现原创 2020-01-09 22:49:55 · 3704 阅读 · 0 评论 -
python 数据结构与算法——优先队列和堆
堆的 python 实现,堆的基本原理原创 2020-01-09 10:55:50 · 2235 阅读 · 0 评论 -
堆排序建立初始堆
例1.有一组记录的排序码为 (3,5,4,7,1,2),则利用堆排序的方法建立的初始堆为 _____________?转载 2020-01-08 19:35:34 · 53546 阅读 · 3 评论 -
python 数据结构与算法——树
二叉树的 python 实现class BinaryTree: def __init__(self, data): self._data = data # root node self._left = None # left child self._right = None @property def data(sel...原创 2020-01-08 14:39:32 · 1499 阅读 · 0 评论 -
python 数据结构与算法——队列
队列的 python 实现class Queue: def __init__(self): self.array = [] def size(self): return len(self.array) def isEmpty(self): return len(self.array) == 0 def fron...原创 2020-01-07 23:35:45 · 1324 阅读 · 0 评论 -
python 数据结构与算法——栈
栈的python实现,栈的应用场景原创 2020-01-07 21:15:16 · 1316 阅读 · 0 评论 -
python 数据结构与算法——链表
链表如何检测链表有环?——快慢指针如何找出链表中倒数第k个元素?——遍历时使用额外指针记录当前位置前第k个元素如何找出链表中间的元素?——快慢指针栈...原创 2020-01-07 20:52:15 · 1396 阅读 · 0 评论 -
python 数据结构与算法——递归与回溯
递归原创 2020-01-06 17:47:54 · 1811 阅读 · 0 评论 -
主定理 Master Theorem
主定理及其证明原创 2020-01-06 11:57:51 · 1720 阅读 · 0 评论