383. 赎金信

给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成。如果可以构成,返回 true ;否则返回 false。

(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。)

注意:

你可以假设两个字符串均只含有小写字母。

canConstruct(“a”, “b”) -> false
canConstruct(“aa”, “ab”) -> false
canConstruct(“aa”, “aab”) -> true

PS:

String.indexof(a,b)
从b索引开始找a字符

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

Java实现 LeetCode 383 赎金信相关推荐

  1. LeetCode.383. 赎金信

    LeetCode.383. 赎金信 难度:easy 利用数组来做哈希表,分别统计两个字符串中各个字母的出现次数: class Solution {public boolean canConstruct ...

  2. LeetCode 383. 赎金信

    383. 赎金信 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成. 如果可以,返回 true :否则返回 fals ...

  3. leetcode 383. 赎金信 思考分析

    题目 给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 tru ...

  4. Leetcode 383 赎金信

    给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 true : ...

  5. leetcode 383赎金信

    给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 true : ...

  6. leetcode 383 赎金信 C++

    自己想的,一个思路两个解法,从字符串中的第一个唯一字符的思路搬过来的 one class Solution {public:bool canConstruct(string ransomNote, s ...

  7. 代码随想录算法训练营第07天 | LeetCode 454.四数相加2,383. 赎金信,15. 三数之和,18. 四数之和,总结

    LeetCode [454. 四数相加 II] 题目:给你四个整数数组 nums1.nums2.nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足 ...

  8. 代码随想录算法训练营day07| 454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和

    Leetcode 454.四数相加II 题目链接 思路:求四数相加之和,将四数两两相加,判断两两相加的数是否和为0 定义一个map,key放两数之和,value放两数之和出现的次数 两层for循环将前 ...

  9. 代码随想录算法训练营第6天 | 454. 四数相加 II 383. 赎金信 15. 三数之和 18. 四数之和

    一.Leetcode 454. 四数相加 II 相当于两数相加.但是呢很巧妙的是,卡哥在遍历CD数组时把查哈希表的方法融入了进去.学习一下. 二.Leetcode 383. 赎金信 更简单了,主要是审 ...

  10. 代码随想录算法训练营第七天| 454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和

    Leetcode 454.四数相加II 思路分析: 本题直观的想法是采取暴力法,四数相加就用四层for循环.虽然能得到结果,但时间复杂度为o(n4),当数组长度较大时,Leetcode便提示超时.该方 ...

最新文章

  1. NYOJ 108士兵杀敌(一)
  2. W3C标准的理解(2015.3.7)(陆续更新中)
  3. python三大特征六大原则_面向对象程序设计(Object Oriented Programming)的三大特性,六大原则...
  4. 远程桌面不能连接,提示awgina.dll取代错误的解决办法
  5. 工作133:nexttick的使用
  6. mybatis 字符串替换而不是设置的方法
  7. 四川大学计算机组成原理实验报告_20092014年计算机组成原理考研真题与解析
  8. 让AI打工!搜狗全体员工于3月12日狗胜节放假一天
  9. jQuery 源码解析一:jQuery 类库整体架构设计解析
  10. Qt将QString转换成ASCII码
  11. 阶段3 1.Mybatis_05.使用Mybatis完成CRUD_5 Mybatis的CRUD-查询返回一行一列和占位符分析...
  12. Java代码块、构造方法(包含继承关系)的执行顺序
  13. 医疗his系统的优势
  14. 极客云原生营-云原生知识
  15. 【软件需求工程与建模】13组组队项目——项目总结
  16. 笔记本计算机的连接无线网络连接,笔记本电脑怎么连无线_笔记本电脑连wifi怎么连-win7之家...
  17. 满庭芳国色 高清剪图 桃红 下
  18. 英语不好可以学mysql吗_请你不要坚持自学一直很烂的英语了,好吗?
  19. Axie Infinity 是一个受神奇宝贝启发的宇宙,任何人都可以通过熟练的游戏玩法和对生态系统的贡献来赚取代币
  20. 如何开启公众号的留言功能?这里有开通流程,赶紧收藏

热门文章

  1. 自习室 《大学生创新创业课程设计》
  2. Pytorch forward方法调用原理
  3. monkey命令——压力测试——转载参考01
  4. 游戏引擎架构-学习笔记
  5. 不良资产证券化信披 担任怎样的角色
  6. 计算机操作员操作题,[2017年精编]计算机操作员(初级)操作题.doc
  7. JavaScript中的浮点运算
  8. 如何用GIS做城市购房选址分析
  9. CF949D Curfew
  10. 计算机自动关机启机唤醒设置,电脑在哪设置定时关机(如何设置电脑的自动关机和自动开机)...