这题有了random模块的shuffle函数是非常简单的。只不过shuffle是直接改变list,需要先用一个中间的list进行替换,否则就改动了init里面的list。
import random
class Solution(object):
def __init__(self, nums):
"""
:type nums: List[int]
:type size: int
"""
self.list1 = nums
def reset(self):
"""
Resets the array to its original configuration and return it.
:rtype: List[int]
"""
return self.list1
def shuffle(self):
"""
Returns a random shuffling of the array.
:rtype: List[int]
"""
list2 = self.list1[::]
random.shuffle(list2)
return list2
本文介绍了一种利用Python的random模块中的shuffle函数来实现数组随机洗牌的方法。通过创建一个Solution类,该类包含初始化、重置和洗牌三个方法。其中洗牌方法会返回一个打乱顺序的新数组副本,而不会改变原始数组。
1890

被折叠的 条评论
为什么被折叠?



