首页
学习
活动
专区
工具
TVP
发布

Python小屋

专栏作者
958
文章
1611045
阅读量
146
订阅数
求解报数游戏(约瑟夫环)的六种方法原理与Python实现源码
有n个人围成一圈,按顺时针顺序编号,从第一个人开始从1到k(例如k=3)报数,报到k的人退出圈子,圈子缩小,从下一个人继续游戏从1到k报数,问最后留下的一个人的编号是什么。
Python小屋屋主
2024-03-18
520
Python三种算法统计任意数列的逆序数
但是,从算法设计与优化的角度来讲,我们从来不以代码行数多少来判断其优劣。上面的代码虽然简洁,但时间复杂度是平方级的O(n^2),毫无技巧可言,实在算不上是个好的算法。
Python小屋屋主
2024-03-18
310
Python使用分治法求解若干数字中连续相加之和最大的子序列
给定一个包含若干整数的列表,求解元素之和最大的连续子序列,如果存在多个元素之和相同的子序列,返回其中最短的一个,要求返回子序列中数字之和以及子序列的起止下标。
Python小屋屋主
2024-02-29
730
Python使用分治法高效求解任意点集的凸包(源码+动画演示)
凸包(Convex Hull)可以理解为能够包围给定点集的最小凸多边形,是计算机图形学及其相关领域中的一个重要问题,在游戏中进行物体碰撞检车时使用的包围盒其实就是凸包。
Python小屋屋主
2024-02-29
590
Python自动寻找迷宫中的最短逃生路径
使用嵌套列表表示一个迷宫,其中的数字1表示可以前进的路径、0表示不可以前进的墙壁,字符S表示迷宫入口、E表示出口。如图,
Python小屋屋主
2024-02-29
750
Python使用牛顿迭代法和二分法计算任意大自然数的平方根近似值
在Python中,使用运算符“**”和内置模块math、cmath的函数sqrt()都可以直接计算平方根,其中运算符“**”和cmath.sqrt()可以计算负数的平方根,math.sqrt()的参数不能为负数。例如
Python小屋屋主
2024-02-29
600
查找二维平面上距离最小点对的O(n)算法原理与Python实现
要解决这个问题,最直接的想法是把给定的点进行两两组合,计算每个组合中两个点的距离,从中找出距离最小的一对。这个算法的计算量非常大,没有任何优化的痕迹,时间复杂度妥妥的O(n^2),即使充分发挥Python语言函数式编程技巧和标准库对象的优势也无法弥补算法本身效率低下的问题。
Python小屋屋主
2024-01-23
1090
矩阵行列式、伴随矩阵、逆矩阵计算方法与Python实现
对于任意方阵,其行列式(determinant)为一个标量,可以看作线性变换对体积的影响或扩大率,行列式的正负号对应图形的镜像翻转。2阶方阵的行列式表示每列向量围成的平行四边形的面积,3阶方阵的行列式表示每列向量围成的平行六面积的体积。在多重积分的换元法中,行列式起到了关键作用。在研究概率密度函数根据随机变量的变化而产生的变化时,也要依靠行列式进行计算,例如空间的延申会导致密度的下降。另外,行列式还可以用来检测是否产生了退化,表示压缩扁平化(把多个点映射到同一个点)的矩阵的行列式为0,行列式为0的矩阵表示的必然是压缩扁平化,这样的矩阵肯定不存在逆矩阵。
Python小屋屋主
2023-12-13
1760
双向选择排序算法思路与Python实现
选择法排序的思路是,从所有元素中选择最小的一个将其与第一个元素交换,然后从剩余元素中选择最小的一个将其与第二个元素交换,再从剩余元素中选择最小的一个将其与第三个元素交换,重复这个过程,直至不再有剩余元素。选择排序算法的时间复杂度为O(n^2)。选择法排序是不稳定的,在某种意义下相等的元素可能无法保持原来的相对顺序。
Python小屋屋主
2023-11-22
1020
Python实现Kruskal 和Prim算法求解无向连通图的最小生成树问题
从边赋权图上选择一部分边得到一个子图,子图与原图具有共同的顶点,子图的边是原图的边的子集,且子图具有最小的开销(边的权值之和最小),符合这样要求的子图称作最小生成树,这类问题称作最小生成树问题。
Python小屋屋主
2023-11-22
1720
Python使用递归和非递归两种算法判断一个非递增序列是否可图化
图的度序列是指图中所有顶点的度(与顶点关联的边的条数,允许图有自环边,也就是以同一个顶点作为出发点和终点的边)按非递增顺序排列得到的序列。如果一个包含若干非负整数的非递增序列可以作为某个图的度序列,则称这个序列可图化,为可图化序列。容易得知,包含负数的序列一定是不可图化的,全0序列是可图化的。
Python小屋屋主
2023-11-22
1390
Python实现哈夫曼编码与解码
哈夫曼编码依据字符出现概率来构造异字头(任何一个字符的编码都不是其他字符编码的前缀)且平均长度最短的码字,通过构造二叉树来实现,出现频次越多的字符编码越短,出现频次越少的字符编码越长。
Python小屋屋主
2023-11-07
1421
Python实现矩阵转置的9种方法
版权声明:由于公众号后台规则问题,本文暂时无法设置原创标记,但仍属原创内容,微信公众号“Python小屋”坚持只发原创技术文章。
Python小屋屋主
2023-10-23
1500
一文掌握Python+Matplotlib坐标轴与刻度综合设置
设置Matplotlib可视化时轴域坐标轴和刻度的属性,包括主刻度与次刻度、线长、颜色、字号、位置、间距、是否显示等。
Python小屋屋主
2023-10-07
3170
Python实现最近最少使用LRU算法管理缓存
小明需要把一些书(多于n本)放入书架,书架上一共有n个尊贵位置,每个位置可以放1本书。这n个位置用来摆放自己最喜欢的书,剩余的放入书架下面的橱子里。小明每次从待整理的书或已经放入尊贵位置的书中拿起1本,将其放入所有空位置中最左侧,n个位置都放满以后还有新书要放入的话就把最左侧的1本拿走放到下面的橱子里,腾出1个空位置来放新书。重复这个过程直到所有的书都处理完,要么放到n个尊贵位置上,要么放到下面的橱子里。
Python小屋屋主
2023-09-27
1630
Python模拟发红包随机生成每个人的金额
Python小屋屋主
2023-08-29
1520
Python+Matplotlib可视化多只蚂蚁沿木棍随机运动并碰头返回的过程
有多只蚂蚁在一根木棍上沿随机方向直线爬行,并且每当两只蚂蚁迎面碰头以后就各自掉头往回爬,到达木棍两段以后就掉下去。
Python小屋屋主
2023-08-29
1590
Python+Matplotlib在极坐标系中绘制动画
问题描述: 在极坐标系中绘制变化的图案,修改代码中的初始位置和计算公式可以得到不同的动画。 参考代码: 📷 运行结果: http://mpvideo.qpic.cn/0b2e4aaagaaay4a
Python小屋屋主
2023-08-29
1900
Python+Matplotlib绘制饼状图并自定义阴影大小
Python小屋屋主
2023-08-29
2320
Python+Pandas逐行处理DataFrame中的某列数据(无循环)
创建一个包含10行6列随机数的DataFrame,行标签从大写字母A开始,列标签从小写字母u开始。然后从上向下遍历,如果某行u列的值比上一行u列的值大,就把该行x列的值改为上一行x列的值加1,否则保持原来的值不变。
Python小屋屋主
2023-08-29
2780
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
热点技术征文第五期
新风口Sora来袭,普通人该如何把握机会?
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档