python中如何实现简单的洗牌算法
python中如何实现简单的洗牌算法
在我们玩的牌类游戏中,通过洗牌算法的设计,落在数组某个位置上的概率是相等的,那你知道如何使用python设计一个简单的洗牌算法吗?其实实现很简单,使用random模块shuffle方法即可实现洗牌算法,本文小编带领大家设计一个简单的洗牌算法。
1、洗牌算法
算法思想就是从原始数组中随机抽取一个新的数字到新数组中,其本质是对数组元素进行随机重排。
数组中每个元素经过洗牌算法后落在数组某个位置上的概率是相等的,洗牌算法在牌类游戏中非常有用。
2、洗牌算法的简单实现
random模块shuffle方法实现洗牌算法
shuffle()方法:将列表的所有元素随机排列
importrandom
defshuffel(lst):
l=len(lst)
ifl1:
p=int(random.random()*l)
lst[i],lst[i+p]=lst[i+p],lst[i]
i+=1
l-=1
returnlst
print(shuffel([1,2,2,3,3,4,5,10]))
以上就是python中使用random模块shuffle方法实现洗牌算法的代码操作,需要注意的是习方法返回空值,会影响原数组哦~更多Python学习教程请关注IT培训机构:开发教育。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!