非独立思考
public static boolean canConstruct(String ransomNote, String magazine) {// 很多涉及字母的题目都可以考虑建立字母数组// 建立字母数组,26个,每出现一个字符,对应的下标++,也就是存放字母出现的次数// 这样就不用考虑下标,没有对应的字符就为零// 很极限这波int[] RN = new int[26];int[] MG = new int[26];char[] charsRN = ransomNote.toCharArray();char[] charsMG = magazine.toCharArray();// 加强型for循环for (char c : charsRN) {RN[c - 'a']++;}for (char c : charsMG) {MG[c - 'a']++;}for (int i = 0; i < 26; i++) {// 如果出现赎金信的字母不够减的情况,就返回falseif (RN[i] > MG[i]) {return false;}}return true;// 还可以使用一个中间变量数组存放字母,只要这个变量对应的字符不够救赎信减去的,就返回false}
