分析
赎金信在侦探系列是容易出现的场景,为了不暴露自己的笔迹,利用一本杂志里面已有的字符来组装自己的信。倘若这本杂志的字符不够,那么赎金信就无法完成。这道题与Valid-Anagram本质上是一致的。Anagram要求字符类型和数量完全一致,本题要求杂志里面所有的字符串类型和数量是赎金信的超集
这道题就不花太多时间再继续深究
主类
class Solution {
public boolean canConstruct(String ransomNote, String magazine) {
if ( ransomNote == null || magazine == null) {
return false;
}
if (magazine.length() ==0 || magazine.length() < ransomNote.length()) {
return false;
}
int[] arraybucket = new int[26];
for(int i = 0; i < magazine.length(); i++) {
arraybucket[magazine.charAt(i) - 'a']++;
}
for(int i = 0; i < ransomNote.length(); i++) {
arraybucket[ransomNote.charAt(i) - 'a']--;
if (arraybucket[ransomNote.charAt(i)- 'a'] < 0) {
return false;
}
}
return true;
}
}
标签:RanSom,ransomNote,return,int,length,Note,magazine,383,arraybucket
From: https://www.cnblogs.com/dolphinmind/p/18351078