384. Shuffle an Array
来源:互联网 发布:网络零售额占社零比重 编辑:程序博客网 时间:2024/06/05 12:25
题目
Shuffle a set of numbers without duplicates.
Example:
// Init an array with set 1, 2, and 3.int[] nums = {1,2,3};Solution solution = new Solution(nums);// Shuffle the array [1,2,3] and return its result. Any permutation of [1,2,3] must equally likely to be returned.solution.shuffle();// Resets the array back to its original configuration [1,2,3].solution.reset();// Returns the random shuffling of array [1,2,3].solution.shuffle();分析
给定一个数组nums,对其进行洗牌,要求nums中的每个元素都以等概率被移动,并且能够返回初始数组。
class Solution {public: Solution(vector<int> nums) :v(nums){ } /** Resets the array to its original configuration and return it. */ vector<int> reset() { return v; } /** Returns a random shuffling of the array. */ vector<int> shuffle() { vector<int> res=v; for(int i=0;i<v.size();i++) { int j=rand()%v.size(); swap(res[i],res[j]); } return res; }private: vector<int> v;};/** * Your Solution object will be instantiated and called as such: * Solution obj = new Solution(nums); * vector<int> param_1 = obj.reset(); * vector<int> param_2 = obj.shuffle(); */
0 0
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array**
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- 384. Shuffle an Array
- [leetcode] 384. Shuffle an Array
- 【leetcode】384. Shuffle an Array
- 384.[LeetCode]Shuffle an Array
- [LeetCode]384. Shuffle an Array
- 新手菜鸟的简单说明python的dump和load
- springmvc生成计算形式的验证码
- Java守护线程
- 【SQL】Sql server 数据库中插入韩文 乱码问题
- GCD串行并发队列扫盲
- 384. Shuffle an Array
- C++操作Oracle
- Radix-2 Recursive-FFT
- 分布式事务之两阶段提交
- servlet及jsp面试题
- flexigrid 参数说明
- 第一篇博客
- DOM(0)什么是DOM
- Android struts2 对象流