383. 赎金信
给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。如果可以,返回 true ;否则返回 false 。magazine 中的每个字符只能在 ransomNote 中使用一次。
示例 1:
输入:ransomNote = "a", magazine = "b"
输出:false
示例 2:
输入:ransomNote = "aa", magazine = "ab"
输出:false
============================================================
用string的find函数,时间复杂度为O(n),空间复杂度为O(1)
class Solution { public: bool canConstruct(string ransomNote, string magazine) { for (int i = 0; i < ransomNote.size(); i++) { if (magazine.find(ransomNote[i]) > magazine.size()) return false; magazine[magazine.find(ransomNote[i])] = ' '; } return true; } };