mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-06 23:28:29 +08:00
Update 0383.赎金信.md
This commit is contained in:
@ -110,23 +110,25 @@ Java:
|
|||||||
```Java
|
```Java
|
||||||
class Solution {
|
class Solution {
|
||||||
public boolean canConstruct(String ransomNote, String magazine) {
|
public boolean canConstruct(String ransomNote, String magazine) {
|
||||||
//记录杂志字符串出现的次数
|
// 定义一个哈希映射数组
|
||||||
int[] arr = new int[26];
|
int[] record = new int[26];
|
||||||
int temp;
|
|
||||||
for (int i = 0; i < magazine.length(); i++) {
|
// 遍历
|
||||||
temp = magazine.charAt(i) - 'a';
|
for(char c : magazine.toCharArray()){
|
||||||
arr[temp]++;
|
record[c - 'a'] += 1;
|
||||||
}
|
}
|
||||||
for (int i = 0; i < ransomNote.length(); i++) {
|
|
||||||
temp = ransomNote.charAt(i) - 'a';
|
for(char c : ransomNote.toCharArray()){
|
||||||
//对于金信中的每一个字符都在数组中查找
|
record[c - 'a'] -= 1;
|
||||||
//找到相应位减一,否则找不到返回false
|
}
|
||||||
if (arr[temp] > 0) {
|
|
||||||
arr[temp]--;
|
// 如果数组中存在负数,说明ransomNote字符串总存在magazine中没有的字符
|
||||||
} else {
|
for(int i : record){
|
||||||
|
if(i < 0){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user