Java实现 LeetCode 383 赎金信
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 赎金信相关推荐
- LeetCode.383. 赎金信
LeetCode.383. 赎金信 难度:easy 利用数组来做哈希表,分别统计两个字符串中各个字母的出现次数: class Solution {public boolean canConstruct ...
- LeetCode 383. 赎金信
383. 赎金信 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成. 如果可以,返回 true :否则返回 fals ...
- leetcode 383. 赎金信 思考分析
题目 给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 tru ...
- Leetcode 383 赎金信
给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 true : ...
- leetcode 383赎金信
给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成.如果可以构成,返回 true : ...
- leetcode 383 赎金信 C++
自己想的,一个思路两个解法,从字符串中的第一个唯一字符的思路搬过来的 one class Solution {public:bool canConstruct(string ransomNote, s ...
- 代码随想录算法训练营第07天 | LeetCode 454.四数相加2,383. 赎金信,15. 三数之和,18. 四数之和,总结
LeetCode [454. 四数相加 II] 题目:给你四个整数数组 nums1.nums2.nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足 ...
- 代码随想录算法训练营day07| 454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和
Leetcode 454.四数相加II 题目链接 思路:求四数相加之和,将四数两两相加,判断两两相加的数是否和为0 定义一个map,key放两数之和,value放两数之和出现的次数 两层for循环将前 ...
- 代码随想录算法训练营第6天 | 454. 四数相加 II 383. 赎金信 15. 三数之和 18. 四数之和
一.Leetcode 454. 四数相加 II 相当于两数相加.但是呢很巧妙的是,卡哥在遍历CD数组时把查哈希表的方法融入了进去.学习一下. 二.Leetcode 383. 赎金信 更简单了,主要是审 ...
- 代码随想录算法训练营第七天| 454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和
Leetcode 454.四数相加II 思路分析: 本题直观的想法是采取暴力法,四数相加就用四层for循环.虽然能得到结果,但时间复杂度为o(n4),当数组长度较大时,Leetcode便提示超时.该方 ...
最新文章
- NYOJ 108士兵杀敌(一)
- W3C标准的理解(2015.3.7)(陆续更新中)
- python三大特征六大原则_面向对象程序设计(Object Oriented Programming)的三大特性,六大原则...
- 远程桌面不能连接,提示awgina.dll取代错误的解决办法
- 工作133:nexttick的使用
- mybatis 字符串替换而不是设置的方法
- 四川大学计算机组成原理实验报告_20092014年计算机组成原理考研真题与解析
- 让AI打工!搜狗全体员工于3月12日狗胜节放假一天
- jQuery 源码解析一:jQuery 类库整体架构设计解析
- Qt将QString转换成ASCII码
- 阶段3 1.Mybatis_05.使用Mybatis完成CRUD_5 Mybatis的CRUD-查询返回一行一列和占位符分析...
- Java代码块、构造方法(包含继承关系)的执行顺序
- 医疗his系统的优势
- 极客云原生营-云原生知识
- 【软件需求工程与建模】13组组队项目——项目总结
- 笔记本计算机的连接无线网络连接,笔记本电脑怎么连无线_笔记本电脑连wifi怎么连-win7之家...
- 满庭芳国色 高清剪图 桃红 下
- 英语不好可以学mysql吗_请你不要坚持自学一直很烂的英语了,好吗?
- Axie Infinity 是一个受神奇宝贝启发的宇宙,任何人都可以通过熟练的游戏玩法和对生态系统的贡献来赚取代币
- 如何开启公众号的留言功能?这里有开通流程,赶紧收藏