![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
算法
philpy_used
这个作者很懒,什么都没留下…
展开
-
Python实现折半查找并用matplotlib实现动态过程可视化
折半查找是算法中减治策略的基本例子,实现起来也很简单,但是在网上看到的图片教程不觉得很干巴么??这是一个简单的实现:def Reduction(lists, k): """ :param lists: 元素列表 :param k: 查找元素 :return: int,list """ list_scatters = [lists] l...原创 2020-04-01 21:28:08 · 488 阅读 · 2 评论 -
分治法进阶篇 | 利用matplotlib画出凸包问题分治递归策略实现过程动态图
话不多说,先上结果:过程演示动态图:结果演示动态图:最终结果静态图:然后说过程:注意,这篇文章是在基于我的上一篇凸包问题分治法写的,这些动态图也是基于我的那篇文章代码先说说matplotlib怎么实现动态图:在这里我用的是 matplotlib 里的animation.FuncAnimationFuncAnimation类的说明(在这里我用的就是这个):https://m...原创 2020-03-06 13:21:13 · 1838 阅读 · 0 评论 -
蛮力法姊妹篇 | Python分治法解决凸包问题并用matplotlib实现可视化以及与蛮力法的对比
之前写了一篇Python蛮力法解决凸包问题并用matplotlib实现可视化,最后也给出了同样是在1000个点的情况下蛮力法和分治法的差距有多大(蛮力法1154秒,分治法0.125秒…)先解释一下为什么吧:因为蛮力法的重点在于中间有三重循环,所以时间复杂度为O(n3),而分治法需要对点击进行一次排序还有一次遍历,排序算法的复杂度为O(logn),遍历一遍复杂度为O(n),所以分治法的时间复杂度...原创 2020-03-04 10:18:55 · 3750 阅读 · 3 评论 -
蛮力法,突突就完了!凸凸凸凸凸 ------- ┳═┻︻▄ | Python蛮力法解决凸包问题并用matplotlib实现可视化
话不多说,能进来看我这篇文章的,肯定都知道凸包问题是啥问题,我就不仔细介绍了,这是它的百度百科。然后说说这玩意怎么搞:说说我的思路:既然说是蛮力法,那么就不考虑那么多花里胡哨的东西,直接暴力上:先随机生成N点集:def rand_point_set(n, range_min=0, range_max=101): """ 随机生成具有 n 个点的点集 :param ...原创 2020-02-29 17:06:03 · 2716 阅读 · 1 评论