当前位置: 首页 > news >正文

上海建材网站自己建立网站教程

上海建材网站,自己建立网站教程,好的网站建设哪家好,电子商务网站开发书实现RandomizedSet 类: RandomizedSet() 初始化 RandomizedSet 对象bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true ;否则,返回 false 。bool remove(int val) 当元素 val 存在时&#xff0…

实现RandomizedSet 类:

  • RandomizedSet() 初始化 RandomizedSet 对象
  • bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true ;否则,返回 false 。
  • bool remove(int val) 当元素 val 存在时,从集合中移除该项,并返回 true ;否则,返回 false 。
  • int getRandom() 随机返回现有集合中的一项(测试用例保证调用此方法时集合中至少存在一个元素)。每个元素应该有 相同的概率 被返回。

你必须实现类的所有函数,并满足每个函数的 平均 时间复杂度为 O(1) 。

示例:

输入
["RandomizedSet", "insert", "remove", "insert", "getRandom", "remove", "insert", "getRandom"]
[[], [1], [2], [2], [], [1], [2], []]
输出
[null, true, false, true, 2, true, false, 2]解释
RandomizedSet randomizedSet = new RandomizedSet();
randomizedSet.insert(1); // 向集合中插入 1 。返回 true 表示 1 被成功地插入。
randomizedSet.remove(2); // 返回 false ,表示集合中不存在 2 。
randomizedSet.insert(2); // 向集合中插入 2 。返回 true 。集合现在包含 [1,2] 。
randomizedSet.getRandom(); // getRandom 应随机返回 1 或 2 。
randomizedSet.remove(1); // 从集合中移除 1 ,返回 true 。集合现在包含 [2] 。
randomizedSet.insert(2); // 2 已在集合中,所以返回 false 。
randomizedSet.getRandom(); // 由于 2 是集合中唯一的数字,getRandom 总是返回 2 。

提示:

  • -231 <= val <= 231 - 1
  • 最多调用 insertremove 和 getRandom 函数 2 * 105 次
  • 在调用 getRandom 方法时,数据结构中 至少存在一个 元素。
class RandomizedSet {
private:unordered_map<int, int> ump;vector<int> nums;
public:RandomizedSet() {}bool insert(int val) {if(ump.count(val)) {return false;} else {nums.push_back(val);ump[val] = nums.size() - 1;return true;}}bool remove(int val) {if(!ump.count(val)) {return false;} else {int idx = ump[val];int last_num = nums.back();// last numnums[idx] = last_num;ump[last_num] = idx; // update idx of last_num// remove valnums.pop_back();ump.erase(val); // --szreturn true;}}int getRandom() {return nums[random() % nums.size()];}
};/*** Your RandomizedSet object will be instantiated and called as such:* RandomizedSet* obj = new RandomizedSet();* bool param_1 = obj->insert(val);* bool param_2 = obj->remove(val);* int param_3 = obj->getRandom();*/

 

http://www.yayakq.cn/news/82792/

相关文章:

  • 站长友情链接平台社区工作者有编制吗
  • 网站的构成元素专业网站优化公司
  • idc网站是用什么语言做的殡葬类网站建设
  • 网站后台查找软件企业网站建设实训报告
  • 网站开发后期工作包括那两个部分wordpress虎嗅网主题
  • 网站便宜建设网站好坏
  • 南山建网站公司网站建设seo优化方案
  • 做运营常用的网站注册网站要注意什么
  • 织梦可以仿所有网站吗宝安网页设计价格
  • seo站点wordpress博客xiu
  • 网站内容页模板卧龙区网站建设哪家好
  • 中国站长站怎么做链接视频教程
  • 什么好的主题做网站网站优化的方式
  • 固原建站公司南昌网站建设制作公司
  • 有源码做网站西安网站搭建
  • 网站建设重庆招聘天津网站建设包括哪些
  • 在线做试卷网站网站设计培训学校找哪家
  • 个人怎么做微信公众号和微网站吗专题网站建设总要求
  • 网站源码在哪看亚马逊周末可以视频认证吗
  • 大连品牌官网建站旅游网站的建设现状
  • 建设银行官方网站客户资料修改电子商务平台经营者对
  • WordPress网站小程序网上学编程
  • 建站 备案电子商务网站建设规划教案
  • 做网站要准备的资料有视频接口怎么做网站
  • 网页模板下载网站10承德很好的网络建站
  • 集团网站改版方案崇州园区营销网站建设
  • 无锡网页建站汕头百度网站排名
  • 爱网站搭建教育培训机构十大排名
  • 网站平台做推广wordpress只更换域名
  • iss服务器网站建设自己站网站