商城网站设计公司系统优化包括哪些

news/2025/10/6 22:48:24/文章来源:
商城网站设计公司,系统优化包括哪些,郑州好的网站设计公司,网站建设的6个基本步骤作者推荐 视频算法专题 本文涉及知识点 哈希映射 哈希集合 LeetCode 381. O(1) 时间插入、删除和获取随机元素 - 允许重复 RandomizedCollection 是一种包含数字集合(可能是重复的)的数据结构。它应该支持插入和删除特定元素#xff0c;以及删除随机元素。 实现 Randomiz…作者推荐 视频算法专题 本文涉及知识点 哈希映射 哈希集合 LeetCode 381. O(1) 时间插入、删除和获取随机元素 - 允许重复 RandomizedCollection 是一种包含数字集合(可能是重复的)的数据结构。它应该支持插入和删除特定元素以及删除随机元素。 实现 RandomizedCollection 类: RandomizedCollection()初始化空的 RandomizedCollection 对象。 bool insert(int val) 将一个 val 项插入到集合中即使该项已经存在。如果该项不存在则返回 true 否则返回 false 。 bool remove(int val) 如果存在从集合中移除一个 val 项。如果该项存在则返回 true 否则返回 false 。注意如果 val 在集合中出现多次我们只删除其中一个。 int getRandom() 从当前的多个元素集合中返回一个随机元素。每个元素被返回的概率与集合中包含的相同值的数量 线性相关 。 您必须实现类的函数使每个函数的 平均 时间复杂度为 O(1) 。 注意生成测试用例时只有在 RandomizedCollection 中 至少有一项 时才会调用 getRandom 。 示例 1: 输入 [“RandomizedCollection”, “insert”, “insert”, “insert”, “getRandom”, “remove”, “getRandom”] [[], [1], [1], [2], [], [1], []] 输出 [null, true, false, true, 2, true, 1] 解释 RandomizedCollection collection new RandomizedCollection();// 初始化一个空的集合。 collection.insert(1); // 返回 true因为集合不包含 1。 // 将 1 插入到集合中。 collection.insert(1); // 返回 false因为集合包含 1。 // 将另一个 1 插入到集合中。集合现在包含 [1,1]。 collection.insert(2); // 返回 true因为集合不包含 2。 // 将 2 插入到集合中。集合现在包含 [1,1,2]。 collection.getRandom(); // getRandom 应当: // 有 2/3 的概率返回 1, // 1/3 的概率返回 2。 collection.remove(1); // 返回 true因为集合包含 1。 // 从集合中移除 1。集合现在包含 [1,2]。 collection.getRandom(); // getRandom 应该返回 1 或 2两者的可能性相同。 提示: -231 val 231 - 1 insert, remove 和 getRandom 最多 总共 被调用 2 * 105 次 当调用 getRandom 时数据结构中 至少有一个 元素 哈希 用向量记录值追加的时候时间复杂度是O1)删除是O(n)。可以将要删除的元素和尾元素互换然后删除。 unordered_mapint, unordered_set m_valueIndex; 记录各值在m_nums中的下标。 注意 要删除的元素就是末尾要特殊处理。否则会删除下标失败而多一个下标。 代码 核心代码 class RandomizedCollection { public:RandomizedCollection() {srand(time(nullptr));std::cout std::endl;}bool insert(int val) {bool b m_valueIndex[val].empty();m_valueIndex[val].emplace(m_nums.size());m_nums.emplace_back(val);std::cout m_nums.size() std::endl;return b;}bool remove(int val) {if (m_valueIndex[val].empty()){return false;}const int delIndex *m_valueIndex[val].begin();m_valueIndex[val].erase(m_valueIndex[val].begin());const int endValue m_nums.back();if (m_valueIndex[endValue].count(m_nums.size() - 1)){m_valueIndex[endValue].erase(m_nums.size() - 1);m_valueIndex[endValue].emplace(delIndex);m_nums[delIndex] endValue;}m_nums.pop_back();std::cout del m_nums.size() std::endl;return true;}int getRandom() {std::cout getRandom m_nums.size() std::endl;return m_nums[rand() % m_nums.size()];}unordered_mapint, unordered_setint m_valueIndex;vectorint m_nums; };2023年5月 class RandomizedCollection { public: RandomizedCollection() { srand(time(nullptr)); } bool insert(int val) { m_mValueIndexs[val].emplace(m_iSize); m_arr[m_iSize] val; m_iSize; return 1 m_mValueIndexs[val].size(); } bool remove(int val) { if (m_mValueIndexs.count(val)) { int index *m_mValueIndexs[val].begin(); m_mValueIndexs[val].erase(index); Erase(index); if (m_mValueIndexs[val].empty()) { m_mValueIndexs.erase(val); } return true; } return false; } int getRandom() { int index rand() % m_iSize; return m_arr[index]; } void Erase(int index) { if (m_iSize - 1 index) { m_iSize–; return; } const int iEndValue m_arr[m_iSize - 1]; m_mValueIndexs[iEndValue].erase(m_iSize - 1); m_mValueIndexs[iEndValue].insert(index); std::swap(m_arr[m_iSize - 1], m_arr[index]); m_iSize–; } std::unordered_mapint, std::unordered_set m_mValueIndexs; int m_arr[1000 * 200]; int m_iSize 0; }; 扩展阅读 视频课程 有效学习明确的目标 及时的反馈 拉伸区难度合适可以先学简单的课程请移步CSDN学院听白银讲师也就是鄙人的讲解。 https://edu.csdn.net/course/detail/38771 如何你想快 速形成战斗了为老板分忧请学习C#入职培训、C入职培训等课程 https://edu.csdn.net/lecturer/6176 相关 下载 想高屋建瓴的学习算法请下载《喜缺全书算法册》doc版 https://download.csdn.net/download/he_zhidan/88348653 我想对大家说的话闻缺陷则喜是一个美好的愿望早发现问题早修改问题给老板节约钱。子墨子言之事无终始无务多业。也就是我们常说的专业的人做专业的事。如果程序是一条龙那算法就是他的是睛 测试环境 操作系统win7 开发环境 VS2019 C17 或者 操作系统win10 开发环境 VS2022 **C 17** 如无特殊说明本算法用**C**实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929782.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

判断网站开发语言wordpress 访问速度

来源:德先生作者:朱圆恒,唐振韬,李伟凡,赵冬斌北京时间2019年1月25日2时,DeepMind在伦敦向世界展示了他们的最新成果——星际争霸2人工智能AlphaStar[1] 。图1. DeepMind AlphaStar挑战星际人类职业玩家直播…

分布式CAP理论 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

【闲话】2025.9.24 记梦

破碎,离奇。话说 \(9.25\) 吃了 \(hz\) 校庆期间 \(hs\) 食堂免费饭菜的人第二天都被抓去做黑工,我和 @wkh2008 因为当时润去不知道干什么了所以没有被抓走,第二天回到班里发现毫无人,然后被学校里巡游的中介带走。…

北京撒网站设计git网站开发

文章目录 目录1. 程序的翻译环境和执行环境2. 详解编译链接2.1 翻译环境2.2 编译本身也分为几个阶段2.3 运行环境 3. 预处理详解3.1 预定义符号3.2 #define3.2.1 #define 定义标识符3.2.2 #define 定义宏3.2.3 #define 替换规则3.2.4 #和##3.2.5 带副作用的宏参数3.2.6 宏和函数…

完整教程:Postgresql常规SQL语句操作

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

酷派Cool20/20S/30/40手机安装Play商店-谷歌三件套-GMS方式

酷派Cool20/20S/30/40手机安装Play商店-谷歌三件套-GMS方式pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consol…

拼多多电商网站建设学校网站建设方案设计

使用 services 指令,请先安装 brew tap gapple/services 安装完成后使用 brew services start mysql

关于网络编辑作业做网站栏目新闻的ppt免费网站软件大全

今年有哪些成功的发行版发布呢? 让我重点介绍最好的几个。 这些发行版在 2023 年引起了人们的关注! 每年我们都会推出一些令人兴奋的新发行版,它们尝试以不同的方式工作,或者提供一些有意义的东西,而不仅仅是“又一个发…

【sa-token】 sa-token非 web 上下文无法获取 HttpServletRequest - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Cloudflare洛杉矶数据中心维护通知:技术架构与影响解析

本文详细介绍了Cloudflare将于2025年10月8日在洛杉矶数据中心进行的计划性维护,包括维护时间窗口、流量重路由机制、潜在延迟影响,以及针对PNI/CNI客户的重要技术建议和通知订阅方式。维护概览 计划维护时间:2025年…

正规的手机网站建设小程序官方平台

等到花都谢了,你怎么还不开机?这电脑开机真是离奇的慢,有心将它换了,奈何兜里空空。凑合着用又无法忍受这种煎熬。其实你只需要用鼠标点几下就可以不用等待这漫长的开机过程了。高铁,飞机,网络,…

友点企业网站管理系统模板保定市清苑区网站建设

看看如果设定了Rollover中某个状态的效果,则 CA.在动画面板上制作的动画适用于所有的Rollover状态B.动画不能应用在Rollover状态上C.在动画面板上制作的动画仅适用于当前的Rollover状态D.同一动画不能赋予多个Rollover…

沧州建设银行招聘网站电子商务网站建设中

参考 一个叫做Version,一个叫做Build,(version是版本号,build是打正式包每次Archive时的都增加的值)这两个值都可以在Xcode中选中target,点击“Summary”后看到。 Version在plist文件中的key是“CFBundleSh…

住房和城乡建设部官方网站已前程无忧招聘网

需求:项目中需要使用netty,本地测试的时候使用的是ws,然后要部署到服务器上,使用https连接,https下就不能用ws了,必须升级到wss 1.阿里云申请免费证书 2.保存证书到本地目录 3.修改代码 SslUtil 工具类…

Windows+VSCode搭建小智(xiaozhi)开发环境 - 教程

Windows+VSCode搭建小智(xiaozhi)开发环境 - 教程2025-10-06 22:21 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; disp…

StarTree支持Apache Iceberg扩展湖仓用例

StarTree宣布其云服务全面支持Apache Iceberg,实现直接查询Iceberg表而无需移动或转换底层数据,解决了高并发实时查询的挑战,同时避免了数据重复存储和复杂管道构建。StarTree支持Apache Iceberg以扩展湖仓用例 基于…

偏微分方程的解

偏微分方程的解求未知函数。

如何在 HTML 中添加按钮 - 实践

如何在 HTML 中添加按钮 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&quo…

网站备案的链接如何创建电商平台

前言 这篇文章用于记录阿里天池 NLP 入门赛,详细讲解了整个数据处理流程,以及如何从零构建一个模型,适合新手入门。 赛题以新闻数据为赛题数据,数据集报名后可见并可下载。赛题数据为新闻文本,并按照字符级别进行匿名…

jsp网站开发视频教程关键词网站排名软件

来源:中国科学报去年,当一颗美式足球场大小的雪茄形天体Oumuamua进入太阳系时,它并非仅仅让人们第一次看到了一块星际岩石。根据一项新的研究,这也支持了太空岩石通过在遥远的恒星系统之间运送微生物,从而在星际间传播…