class Solution {
int[] originNums;
public Solution(int[] nums) {
originNums = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
originNums[i] = nums[i];
}
}
/** Resets the array to its original configuration and return it. */
public int[] reset() {
return originNums;
}
/** Returns a random shuffling of the array. */
public int[] shuffle() {
int[] shuffleNums = new int[originNums.length];
for (int i = 0; i < originNums.length; i++) {
shuffleNums[i] = originNums[i];
}
for (int i = 0; i < shuffleNums.length; i++) {
Random rand = new Random ();
int randomIndex = rand.nextInt (shuffleNums.length - 1 - i + 1) + i;
int temp = shuffleNums[randomIndex];
shuffleNums[randomIndex] = shuffleNums[i];
shuffleNums[i] = temp;
}
return shuffleNums;
}
}
/**
* Your Solution object will be instantiated and called as such:
* Solution obj = new Solution(nums);
* int[] param_1 = obj.reset();
* int[] param_2 = obj.shuffle();
*/
[LeetCode 384] Shuffle an Array (Medium)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Shuffle a set of numbers without duplicates.Example: Solu...
- Shuffle a set of numbers without duplicates.Example:// In...