383哈希表-赎金信
Posted 孤注一掷 、
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了383哈希表-赎金信相关的知识,希望对你有一定的参考价值。
题目
思路
用空间换时间,26大小的数组,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成。
注意,杂志里的字母不可重复使用,出现几次算几次,第二次遍历出现一次减一次
如果为负数说明没出现。
代码
class Solution
public boolean canConstruct(String ransomNote, String magazine)
int[] record = new int[26];
for(char c : magazine.toCharArray())
record[c - 'a'] += 1;
for(char c : ransomNote.toCharArray())
record[c - 'a'] -= 1;
//如果数组中存在负数,说明ransomNote字符串总存在magazine中没有的字符
for(int i : record)
if(i < 0)
return false;
return true;
以上是关于383哈希表-赎金信的主要内容,如果未能解决你的问题,请参考以下文章