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

济南网站制作apple官网

济南网站制作,apple官网,thinkphp和wordpress,手机中国建设银行网站保证文件名唯一【LC1487】 给你一个长度为 n 的字符串数组 names 。你将会在文件系统中创建 n 个文件夹:在第 i 分钟,新建名为 names[i] 的文件夹。 由于两个文件 不能 共享相同的文件名,因此如果新建文件夹使用的文件名已经被占用&#xff0…

保证文件名唯一【LC1487】

给你一个长度为 n 的字符串数组 names 。你将会在文件系统中创建 n 个文件夹:在第 i 分钟,新建名为 names[i] 的文件夹。

由于两个文件 不能 共享相同的文件名,因此如果新建文件夹使用的文件名已经被占用,系统会以 (k) 的形式为新文件夹的文件名添加后缀,其中 k 是能保证文件名唯一的 最小正整数

返回长度为 n 的字符串数组,其中 ans[i] 是创建第 i 个文件夹时系统分配给该文件夹的实际名称。

  • 思路:

    使用哈希表统计每个文件名出现的次数,如果哈希表中未出现过该文件名,那么不需要添加后缀,将其直接放入哈希表中;如果哈希表中出现过该文件名,那么需要找到不存在与哈希表中的最小后缀k,那么新文件夹的文件名为file=names[i] + "(" + k + ")",然后在哈希表中更新names[i] 出现的次数和file

  • 实现

    class Solution {public String[] getFolderNames(String[] names) {int n = names.length;Map<String, Integer> map = new HashMap<>();String[] res = new String[n];for (int i = 0; i < n; i++){if (!map.containsKey(names[i])){map.put(names[i], 1);res[i] = names[i];}else{        int count = map.get(names[i]);while (map.containsKey(names[i] + "(" + count + ")")){count++;}String file = names[i] + "(" + count + ")";                res[i] = file;map.put(file, 1);map.put(names[i], count);}}return res;}
    }
    
    • 复杂度
      • 时间复杂度:O(∑i=0n−1mi)O(\sum^{n-1} _{i=0} m_i)O(i=0n1mi),mim_imi表示字符串names[i]names[i]names[i]的长度
      • 空间复杂度:O(∑i=0n−1mi)O(\sum^{n-1} _{i=0} m_i)O(i=0n1mi)
http://www.yayakq.cn/news/680768/

相关文章:

  • 站内免费推广有哪些广告策划书包括哪些内容
  • 网站建设便宜的公司哪家好深圳建设局网站打不开
  • 怎么做淘宝推广网站怎么建设网站多少钱
  • 上国外的网站很慢网站建设单选按钮
  • 露营旅游网站策划书营销网站排行榜前十名
  • 腾讯网站的品牌建设计划网站建站网站开发
  • 网站统计数据分析服务器租用一天
  • 网站源码免费的个人网站如何制作教程
  • 西山网站建设世界上前端做的最好的网站
  • 湛江哪里有建网站绿色网站欣赏
  • 建设银行网站会员登陆网站维保方法
  • 湖北建设信息网站 联系方式那个网站做效果图电脑配置
  • doku做网站别墅效果图网站
  • 安徽省建设厅网站 职称网站制作 杭州
  • 广西企业建站湖南seo推广服务
  • 网站设计的趋势网站建设类公司
  • 汕头做网站费用山西本地网
  • 网站底部悬浮广告代码北京seo优化排名推广
  • 机械加工网站推广有效果吗国外建设网站流程
  • 网站建设与维护招投标书区网站建设
  • 聊城做网站好的公司做网站知识大全
  • icp网站备案管理系统app开发公司不退款该怎么投诉
  • 咨询企业网站模板在哪找做调查赚钱的网站
  • 安阳哪里做网站网站留言板块怎么做
  • 广州建设网站哪个好二维码生成器永久免费版下载
  • 盘锦网站开发阜宁做网站工作室
  • 做网站 需要什么样的服务器赣州章贡区二手房出售信息
  • 做网站的销售好做吗怎样做一家网站
  • php 网站伪静态古田住房与建设局网站
  • 网站建设基础 ppt福建百度推广开户