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

如何制作社交网站爱站网关键词查询网站

如何制作社交网站,爱站网关键词查询网站,cdn网站加速 免备案,微信小店怎么开通题目: 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以,返回 true ;否则返回 false 。 magazine 中的每个字符只能在 ransomNote 中使用一次。 示例 1&#…

题目:

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true ;否则返回 false 。

magazine 中的每个字符只能在 ransomNote 中使用一次。

示例 1:

输入:ransomNote = "a", magazine = "b"
输出:false

示例 2:

输入:ransomNote = "aa", magazine = "ab"
输出:false

示例 3:

输入:ransomNote = "aa", magazine = "aab"
输出:true

提示:

  • 1 <= ransomNote.length, magazine.length <= 105
  • ransomNote 和 magazine 由小写英文字母组成

分析:

本题就是给定两个字符串ransomNote和magazine需要使magazine的总字符数量及类别包含ransomNote

也就是图片所示

magazine中的每个字符只能对应ransomNote中的一个字符,看到这道题我首先想到使用map来存储magazine每个字符出现的个数字符作为key值接着使用ransomNote遍历每个字符在map中查找并进行value的自减操作如果map中有元素的值小于0的话那就代表ransomNote不能由magazine组成故返回false否则遍历完毕后返回true但使用map虽然能将题目解出来但map涉及数组、链表以及红黑树的转换比较耗时和占用空间所以本题的优质解法可采用数组来解决;

map解法:

class Solution {public boolean canConstruct(String ransomNote, String magazine) {Map<Character, Integer> map = new HashMap();for (int i = 0; i < magazine.length(); i++) {map.put(magazine.charAt(i), map.getOrDefault(magazine.charAt(i), 0) + 1);}for (int i = 0; i < ransomNote.length(); i++) {map.put(ransomNote.charAt(i), map.getOrDefault(ransomNote.charAt(i), 0) - 1);if (map.get(ransomNote.charAt(i)) == null || map.get(ransomNote.charAt(i)) < 0)return false;}return true;}
}

数组解法:

附加:先判断ransomNote 长度是否大于magazine 如果大于则直接返回false

1、创建一个长度为26的数组(因为英文字母26个)

2、遍历magazine 字符串将其字符减去‘a’的ASCLL码获得数值0~26的索引下标对应各个字母并相应进行自增操作

3、遍历ransomNote 字符串同样执行步骤2的操作但相应进行自减操作

4、判断如果数组元素小于0则直接返回false否则返回true

class Solution {public boolean canConstruct(String ransomNote, String magazine) {int[] record=new int[26];if(ransomNote.length()>magazine.length())return false;for(int i=0;i<magazine.length();i++){int num=magazine.charAt(i)-'a';record[num]++;}for(int i=0;i<ransomNote.length();i++){int num=ransomNote.charAt(i)-'a';record[num]--;if(record[num]<0)return false;}return true;}
}

http://www.15wanjia.com/news/32029.html

相关文章:

  • 海淀商城网站建设湖南长沙今日疫情
  • 网站图片宽度厦门网站优化
  • 营销网站定制开网站需要什么流程
  • 开发网站类型百度推广的方式有哪些
  • 营销型网站建设企业0元入驻的电商平台
  • 集合视频网站资源怎么做seo整站优化推广
  • 自己做网站花钱么无锡网站制作推广
  • 中山网站建设最好的公司郑州seo方案
  • 菜谱设计制作图片排名优化方法
  • 深圳市做网站的seo技术培训价格表
  • 能发锚文本的网站一个网站可以优化多少关键词
  • 湘潭网站建设 安全还踏实磐石网络今日新闻最新事件
  • 0505网页制作与网站建设电脑优化软件
  • 网站开发课表查询外贸推广代理
  • 2023年企业年报入口泰安seo网络公司
  • 网站一般字体建站优化公司
  • 个人网站案例电商网站设计
  • 网站运营管理的内容有哪些微商推广哪家好
  • 厦门的网站建设公司石家庄新闻
  • 安徽省六安市建设局网站简述在线推广网站的方法
  • 英文搜索网站网站定制
  • 谁可以做网站优化排名推广企业培训课程有哪些内容
  • 做企业网站用php百度搜索热度指数
  • 一个人能开发app吗百度快照seo
  • 帝国cms 网站地图标签洛阳seo博客
  • wordpress接入公众号南宁seo优化
  • 自己做的网站能备案吗怎样做品牌推广
  • 哈尔滨模板建站系统推广软件免费
  • 个人做企业 网站nba最新消息球员交易
  • 做羊毛毡的网站2023年8月份新冠症状