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

北海做网站网站建设哪家好淄博seo方案

北海做网站网站建设哪家好,淄博seo方案,哪种类型的网站比较难做,响应式网站模板 食品文章目录题目描述题目链接题目难度——中等方法一#xff1a;哈希表代码/Python代码/C总结题目描述 给你一个长度为 n 的字符串数组 names 。你将会在文件系统中创建 n 个文件夹#xff1a;在第 i 分钟#xff0c;新建名为 names[i] 的文件夹。 由于两个文件 不能 共享相同… 文章目录题目描述题目链接题目难度——中等方法一哈希表代码/Python代码/C总结题目描述 给你一个长度为 n 的字符串数组 names 。你将会在文件系统中创建 n 个文件夹在第 i 分钟新建名为 names[i] 的文件夹。 由于两个文件 不能 共享相同的文件名因此如果新建文件夹使用的文件名已经被占用系统会以 (k) 的形式为新文件夹的文件名添加后缀其中 k 是能保证文件名唯一的 最小正整数 。 返回长度为 n 的字符串数组其中 ans[i] 是创建第 i 个文件夹时系统分配给该文件夹的实际名称。 示例 1 输入names [pes,fifa,gta,pes(2019)] 输出[pes,fifa,gta,pes(2019)] 解释文件系统将会这样创建文件名 pes -- 之前未分配仍为 pes fifa -- 之前未分配仍为 fifa gta -- 之前未分配仍为 gta pes(2019) -- 之前未分配仍为 pes(2019) 示例 2 输入names [gta,gta(1),gta,avalon] 输出[gta,gta(1),gta(2),avalon] 解释文件系统将会这样创建文件名 gta -- 之前未分配仍为 gta gta(1) -- 之前未分配仍为 gta(1) gta -- 文件名被占用系统为该名称添加后缀 (k)由于 gta(1) 也被占用所以 k 2 。实际创建的文件名为 gta(2) 。 avalon -- 之前未分配仍为 avalon 示例 3 输入names [onepiece,onepiece(1),onepiece(2),onepiece(3),onepiece] 输出[onepiece,onepiece(1),onepiece(2),onepiece(3),onepiece(4)] 解释当创建最后一个文件夹时最小的正有效 k 为 4 文件名变为 onepiece(4)。 示例 4 输入names [wano,wano,wano,wano] 输出[wano,wano(1),wano(2),wano(3)] 解释每次创建文件夹 wano 时只需增加后缀中 k 的值即可。 示例 5 输入names [kaido,kaido(1),kaido,kaido(1)] 输出[kaido,kaido(1),kaido(2),kaido(1)(1)] 解释注意如果含后缀文件名被占用那么系统也会按规则在名称后添加新的后缀 (k) 。 提示 1 names.length 5 * 10^41 names[i].length 20names[i] 由小写英文字母、数字和/或圆括号组成。 题目链接 题目难度——中等 方法一哈希表 我们需要一个哈希表seen来记录每个文件名的出现次数同时以这个出现次数作为我们获取答案的依据之一。 代码/Python class Solution:def getFolderNames(self, names):used_names {}result []for name in names:if name not in used_names:# 如果名称没有被占用直接使用used_names[name] 1result.append(name)else:# 如果名称被占用就把出现次数k used_names[name]while f{name}({k}) in used_names:k 1used_names[f{name}({k})] 1result.append(f{name}({k}))used_names[name] k 1 # 下一次要判断的return result代码/C class Solution { public:vectorstring getFolderNames(vectorstring names) {mapstring, int seen;vectorstring res;for(auto name: names){// seen.count返回出现次数find返回指向元素的迭代器if(!seen.count(name)){res.push_back(name);seen[name] 1;}else{int k seen[name];while(seen.count(name ( to_string(k) ))){k;}string t name ( to_string(k) );seen[t] 1;res.push_back(t);seen[name] k 1;}}return res;} };上面的代码还可以写得更简单一些直接用一个while来代替if-else以python为例 class Solution:def getFolderNames(self, names):seen dict()res []for name in names:n namewhile n in seen:n f{name}({seen[name]})seen[name] 1seen[n] 1res.append(n)return res 总结 方法一时间复杂度应该是O(N)级的空间复杂度O(N)。
http://www.dnsts.com.cn/news/128830.html

相关文章:

  • 建设集团领导班子名单佛山网站建设seo优化
  • 手机网页视频下载软件佛山网站优化方法软件
  • 建设银行深分行圳招聘网站山东专业网站建设公司
  • 免费企业网站注册常用的网站推广的方式方法
  • 保山 网站建设商城购物网站开发背景
  • 网站建设备案查询广州做企业网站
  • 网站营销与推广中国石化工程建设有限公司怎么样
  • 网站公司谁跟客户客户沟通开发手机应用网站
  • 网站框架代码建设银行网上流览网站
  • 保定市网站设计网站建设的方式有哪些内容
  • 网站开发网上教学百度网站怎么做
  • 网站建设公司高端wordpress仿站教程+vip
  • 做网站高亮手机网站建设哪家优惠
  • 网站建设 logo百度统计app
  • 部门网站建设方案广州网站制作培训
  • 建网站在哪里做广告网站子页面怎么做
  • 邮箱的官方网站注册热词分析工具
  • 网站开发出来为什么加载特别慢WordPress 有趣插件
  • 自己做网站运营ppt设计教程网
  • 网站上做网上支付功能别墅花园装修设计公司
  • 广东购物网站建设价格搜索引擎不友好的网站特征
  • 定制网站开发哪家好网站注册主机
  • 丽江网站设计公司网站建设的实验步骤
  • 联盟网站徐州云建站模板
  • 如何更改网站源码快速搭建网站服务器
  • 可以做淘宝推广的网站吗模板支架图片
  • 桂平网站制作wordpress 菜单链接
  • 全国建设部网站证书查询怎么做网站编辑
  • php+ajax网站开发典型实例 pdf一刻相册有多少免费空间
  • 推广网站平台有哪些wordpress 书店