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

做数据表格的网站最新新闻热点事件素材2023

做数据表格的网站,最新新闻热点事件素材2023,网站seo思路,网站设计外文文献LeetCode 380 O(1) 时间插入、删除和获取随机元素 实现RandomizedSet 类: RandomizedSet() 初始化 RandomizedSet 对象 bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true ;否则,返回 false 。 …

LeetCode 380 O(1) 时间插入、删除和获取随机元素

实现RandomizedSet 类:
RandomizedSet() 初始化 RandomizedSet 对象
bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true ;否则,返回 false 。
bool remove(int val) 当元素 val 存在时,从集合中移除该项,并返回 true ;否则,返回 false 。
int getRandom() 随机返回现有集合中的一项(测试用例保证调用此方法时集合中至少存在一个元素)。每个元素应该有 相同的概率 被返回。
你必须实现类的所有函数,并满足每个函数的 平均 时间复杂度为 O(1) 。

哈希表+变长数组

哈希表实现插入和删除的O(1),变长数组实现随机读取的O(1)

Python

class RandomizedSet:def __init__(self):self.nums = []self.indices = {}def insert(self, val: int) -> bool:if val in self.indices:return Falseself.indices[val] = len(self.nums)self.nums.append(val)return Truedef remove(self, val: int) -> bool:if val not in self.indices:return Falseid = self.indices[val]self.nums[id] = self.nums[-1]self.indices[self.nums[id]] = idself.nums.pop()del self.indices[val]return Truedef getRandom(self) -> int:return choice(self.nums)
# 作者:力扣官方题解
# 链接:https://leetcode.cn/problems/insert-delete-getrandom-o1/
# 来源:力扣(LeetCode)
# 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Go

type RandomizedSet struct {nums    []intindices map[int]int
}func Constructor() RandomizedSet {return RandomizedSet{[]int{}, map[int]int{}}
}func (rs *RandomizedSet) Insert(val int) bool {if _, ok := rs.indices[val]; ok {return false}rs.indices[val] = len(rs.nums)rs.nums = append(rs.nums, val)return true
}func (rs *RandomizedSet) Remove(val int) bool {id, ok := rs.indices[val]if !ok {return false}last := len(rs.nums) - 1rs.nums[id] = rs.nums[last]rs.indices[rs.nums[id]] = idrs.nums = rs.nums[:last]delete(rs.indices, val)return true
}func (rs *RandomizedSet) GetRandom() int {return rs.nums[rand.Intn(len(rs.nums))]
}// 作者:力扣官方题解
// 链接:https://leetcode.cn/problems/insert-delete-getrandom-o1/
// 来源:力扣(LeetCode)
// 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
http://www.yayakq.cn/news/35571/

相关文章:

  • 免费自助建站源码编写网站
  • 株洲网站设计外包运营我做的网站不知道网站怎么办
  • 先申请网站空间宜昌高端网站建设
  • 网站空间送域名代运营公司怎么找客户
  • 设计师免费素材网站推荐qq刷网站空间
  • 有做分期海淘的网站吗wordpress内页锚文本
  • 萧山好的做网站的公司南城区网站仿做
  • 怎么做网站移植网站网站域名怎么查询
  • 重庆网站首页排名公司做物流网站的图片素材
  • wordpress入门建站网站建设及优化 赣icp
  • 现在企业做门户网站搜狐网站建设
  • 注册号域名后如何建设公司网站全国好的深圳网站设计
  • 外贸公司几个网站全球国家综合实力排名
  • 常用网站架构成都模板网建站
  • 年轻人必备的十大网站做网站容易学吗
  • 哪里网站建设联系工商银行在线登录入口
  • 怎么做58同城网站吗手机网站商城建设答辩
  • 网站建设灬金手指下拉十五c 博客网站开发教程
  • 推荐 官网 潍坊网站建设怎么开店
  • 越秀做网站成都网页开发
  • 广东网站建设软件厦门景观绿环建设行业协会网站
  • 注册博客域名做视频网站会怎么样成都新津县建设网站
  • 什么网站做推广比较好cms网站设计
  • 第三方平台做网站网站手机网站如何开发
  • 网站登录密码忘记了怎么办手机有办法做网站吗
  • 网上如何建网站卖量具成都爱品阅网络科技有限公司
  • 品牌网站建设毛尖c网站开发设计说明书
  • 重庆做网站人才网站从建设到运行要多少
  • 安卓 wordpress 源码网站页面排名优化
  • 昆山网站建设公司苏州爬虫科技怎么做网站导航地图