四数之和(18)

打印 上一主题 下一主题

主题 899|帖子 899|积分 2697

题目要求

给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满意下述全部条件且不重复的四元组 [nums[a], nums, nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个四元组重复):


0 0 && nums>target){                return result;            }                        if (i > 0 && nums == nums[i - 1]) {                continue;            }                        for (int j = i + 1; j < nums.length - 2; j++) {                //这个地方真是个天坑,本人为此耗时俩个小时                if (nums+nums[j] > 0 && nums+nums[j] > target) {                    continue;                }                                if (j > i + 1 && nums[j] == nums[j - 1]) {                    continue;                }                                int left = j + 1;                int right = nums.length - 1;                                while (left < right) {                    long sum = (long) nums + nums[j] + nums[left] + nums[right];                                        if (sum == target) {                        result.add(Arrays.asList(nums, nums[j], nums[left], nums[right]));                                                // 跳过重复的元素                        while (left < right && nums[left] == nums[left + 1]) {                            left++;                        }                        while (left < right && nums[right] == nums[right - 1]) {                            right--;                        }                                                left++;                        right--;                    } else if (sum < target) {                        left++;                    } else {                        right--;                    }                }            }        }                return result;    }}[/code]
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张春

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表