0383. Ransom Note

383. Ransom Note #

题目 #

给定两个字符串: ransomNotemagazine,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true,否则返回 false

magazine 中的每个字符只能在 ransomNote 中使用一次。

思路 #

代码 #

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