典型的字符串计数问题:
1)当需要被拼接的字符串长度大于另一个字符串长度直接返回false
2)用int[26]对字符串进行遍历计数
class Solution{
public boolean canConstruct(String ransomNote, String magazine) {
if(ransomNote.length()>magazine.length())return false;
int s[]=new int[26];
char[] chars1 = ransomNote.toCharArray();
char[] chars2 = magazine.toCharArray();
for(int i=0;i<chars2.length;i++){
if(i<ransomNote.length()){
s[chars1[i]-'0'-49]-=1;
}
s[chars2[i]-'0'-49]+=1;
}
for(int i:s){
if (i<0)return false;
}
return true;
}
public static void main(String[] args) {
System.out.println('a'-'0'-49);
}
}