Python洗牌,经典洗牌算法

  Python洗牌,经典洗牌算法

  在我们玩的卡牌游戏中,通过洗牌算法的设计,落在数组中某个位置上的概率是相等的。你知道怎么用python设计一个简单的洗牌算法吗?其实实现很简单。利用随机模块的洗牌方法可以实现洗牌算法。在这篇文章中,边肖带领大家设计了一个简单的洗牌算法。

  1、洗牌算法

  该算法的思想是从原数组中随机选取一个新数到新数组中,其本质是随机重排数组的元素。

  洗牌算法后数组中每个元素落到数组中某个位置的概率是相等的,洗牌算法在卡牌游戏中非常有用。

  2、洗牌算法的简单实现

  实现洗牌算法的随机模块洗牌方法

  Shuffle()方法:随机排列列表中的所有元素。

  随机输入

  第:号法令

  l=len(lst)

  ifl=1:

  returnlst

  i=0

  whilel1:

  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中使用随机模块的shuffle方法进行shuffle算法的代码操作。需要注意的是,常规方法返回null值,会影响原数组~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: