Update 0018.四数之和.md 更新 Java 代码块

This commit is contained in:
ma
2024-08-07 10:46:56 +08:00
parent 0d6080ba5c
commit 0cdfc3fef8

View File

@ -251,8 +251,8 @@ class Solution {
for (int i = 0; i < nums.length; i++) { for (int i = 0; i < nums.length; i++) {
// nums[i] > target 直接返回, 剪枝操作 // nums[i] >= 0 && nums[i] > target 直接返回, 剪枝操作
if (nums[i] > 0 && nums[i] > target) { if (nums[i] >= 0 && nums[i] > target) {
return result; return result;
} }
@ -262,10 +262,10 @@ class Solution {
for (int j = i + 1; j < nums.length; j++) { for (int j = i + 1; j < nums.length; j++) {
// nums[i]+nums[j] > target 直接返回, 剪枝操作 // nums[i] >= 0 && nums[i] + nums[j] > target 剪枝操作
if (nums[i]+nums[j] > 0 && nums[i]+nums[j] > target) { if (nums[i] >= 0 && nums[i] + nums[j] > target) {
return result; break;
} }
if (j > i + 1 && nums[j - 1] == nums[j]) { // 对nums[j]去重 if (j > i + 1 && nums[j - 1] == nums[j]) { // 对nums[j]去重
continue; continue;
@ -274,7 +274,7 @@ class Solution {
int left = j + 1; int left = j + 1;
int right = nums.length - 1; int right = nums.length - 1;
while (right > left) { while (right > left) {
// nums[k] + nums[i] + nums[left] + nums[right] > target int会溢出 // nums[j] + nums[i] + nums[left] + nums[right] int 可能会溢出,需要转为 long
long sum = (long) nums[i] + nums[j] + nums[left] + nums[right]; long sum = (long) nums[i] + nums[j] + nums[left] + nums[right];
if (sum > target) { if (sum > target) {
right--; right--;