数据结构与算法之深入解析“黑名单中的随机数”的求解思路与算法示例
Posted ╰つ栺尖篴夢ゞ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构与算法之深入解析“黑名单中的随机数”的求解思路与算法示例相关的知识,希望对你有一定的参考价值。
一、题目要求
- 给定一个整数 n 和一个无重复黑名单整数数组 blacklist,设计一种算法,从 [0, n - 1] 范围内的任意整数中选取一个未加入黑名单 blacklist 的整数,任何在上述范围内且不在黑名单 blacklist 中的整数都应该有同等的可能性被返回。
- 优化你的算法,使它最小化调用语言内置随机函数的次数。
- 实现 Solution 类:
-
- Solution(int n, int[] blacklist) 初始化整数 n 和被加入黑名单 blacklist 的整数;
-
- int pick() 返回一个范围为 [0, n - 1] 且不在黑名单 blacklist 中的随机整数。
- 示例 1:
输入
["Solution", "pick", "pick", "pick",
以上是关于数据结构与算法之深入解析“黑名单中的随机数”的求解思路与算法示例的主要内容,如果未能解决你的问题,请参考以下文章
数据结构与算法之深入解析“股票的最大利润”的求解思路与算法示例