Merge pull request #2037 from Winson-Huang/master

Update 0454.四数相加II.md 0383.赎金信.md
This commit is contained in:
程序员Carl
2023-04-30 09:33:17 +08:00
committed by GitHub
2 changed files with 7 additions and 10 deletions

View File

@ -117,6 +117,10 @@ Java
```Java ```Java
class Solution { class Solution {
public boolean canConstruct(String ransomNote, String magazine) { public boolean canConstruct(String ransomNote, String magazine) {
// shortcut
if (ransomNote.length() > magazine.length()) {
return false;
}
// 定义一个哈希映射数组 // 定义一个哈希映射数组
int[] record = new int[26]; int[] record = new int[26];

View File

@ -102,21 +102,14 @@ class Solution {
//统计两个数组中的元素之和同时统计出现的次数放入map //统计两个数组中的元素之和同时统计出现的次数放入map
for (int i : nums1) { for (int i : nums1) {
for (int j : nums2) { for (int j : nums2) {
int tmp = map.getOrDefault(i + j, 0); int sum = i + j;
if (tmp == 0) { map.put(sum, map.getOrDefault(sum, 0) + 1);
map.put(i + j, 1);
} else {
map.replace(i + j, tmp + 1);
}
} }
} }
//统计剩余的两个元素的和在map中找是否存在相加为0的情况同时记录次数 //统计剩余的两个元素的和在map中找是否存在相加为0的情况同时记录次数
for (int i : nums3) { for (int i : nums3) {
for (int j : nums4) { for (int j : nums4) {
int tmp = map.getOrDefault(0 - i - j, 0); res += map.getOrDefault(0 - i - j, 0);
if (tmp != 0) {
res += tmp;
}
} }
} }
return res; return res;