384. Shuffle an Array
来源:互联网 发布:mysql-python和mysqldb 编辑:程序博客网 时间:2024/06/05 21:02
@(leetcode)[数组]
Problem
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();
Solution
class Solution {public: Solution(vector<int> nums) : org(nums){ } /** Resets the array to its original configuration and return it. */ vector<int> reset() { return org; } /** Returns a random shuffling of the array. */ vector<int> shuffle() { vector<int> ret = org; int len = ret.size(); for(int i = 0; i < len; ++i) { //随机从[i, n-1]中取一个数和i交换 int exchange_idx = rand() %(len - i); swap(ret[i], ret[i + exchange_idx]); } return ret; }private: vector<int> org;};
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
- 38. Count and Say
- 2-HTML5样式、链接和表格
- HTML 排版与标签(五)
- 3-HTML5列表、块和布局
- 进程的调度算法
- 384. Shuffle an Array
- Stm32串口控制
- Day17、链式存储结构动态分配内存、栈的顺序存储结构和链式存储结构
- 4-HTML5表单提交和PHP环境搭建
- MFC--利用Haru库生成PDF文件
- Longest Prefix_usaco 2.3.1_dp
- mysql 1449 : The user specified as a definer ('root'@'%') does not exist 解决方法
- 5-HTML5框架、背景和实体
- 6-XHTML的使用规范