python中如何實現簡單的洗牌算法
在我們玩的牌類游戲中,通過洗牌算法的設計,落在數組某個位置上的概率是相等的,那你知道如何使用python設計一個簡單的洗牌算法嗎?其實實現很簡單,使用random模塊shuffle方法即可實現洗牌算法,本文小編帶領大家設計一個簡單的洗牌算法。
1、洗牌算法
算法思想就是從原始數組中隨機抽取一個新的數字到新數組中,其本質是對數組元素進行隨機重排。
數組中每個元素經過洗牌算法后落在數組某個位置上的概率是相等的,洗牌算法在牌類游戲中非常有用。
2、洗牌算法的簡單實現
random模塊shuffle方法實現洗牌算法
shuffle()方法:將列表的所有元素隨機排列
importrandom
defshuffel(lst):
l=len(lst)
ifl<=1:
returnlst
i=0
whilel>1:
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培訓機構:千鋒教育。