当前位置: 首页 > news >正文

免费网站软件下载安装购物系统名称

免费网站软件下载安装,购物系统名称,商城网站技术方案,线上商城如何推广一、题目描述给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。…

一、题目描述

给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请

你返回所有和为 0 且不重复的三元组。

注意:答案中不可以包含重复的三元组。

示例 1:

输入:nums = [-1,0,1,2,-1,-4]

输出:[[-1,-1,2],[-1,0,1]]

解释:

nums[0] + nums[1] + nums[2] = (-1) + 0 + 1 = 0 。

nums[1] + nums[2] + nums[4] = 0 + 1 + (-1) = 0 。

nums[0] + nums[3] + nums[4] = (-1) + 2 + (-1) = 0 。

不同的三元组是 [-1,0,1] 和 [-1,-1,2] 。

注意,输出的顺序和三元组的顺序并不重要。

示例 2:

输入:nums = [0,1,1]

输出:[]

解释:唯一可能的三元组和不为 0 。

示例 3:

输入:nums = [0,0,0]

输出:[[0,0,0]]

解释:唯一可能的三元组和为 0 。

来源:力扣(LeetCode)

链接:https://leetcode.cn/problems/3sum

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

二、运行结果

三、解题思路

首先对原数组按非降序的方式进行排序。逐个将从第1个至第n-2个元素作为三个元素中的第一个(i),另外两个元素只考虑i后面的元素,采用双指针的方式,两个指针分别从两端向中间靠拢,如果出现重复的值就跳过(只考虑第一次出现的时候),避免出现重复的组合。

这里效率比较低的原因可能是在循环里的判断太多,可以尝试一下改进循环内结构,减少判断,如将while循环也改为for循环,即以第二个元素的下标作为内存循环。

四、AC代码

class Solution {public List<List<Integer>> threeSum(int[] nums) {int len = nums.length;List<List<Integer>> ans = new ArrayList<>();Arrays.sort(nums);  //对原数组排序for(int i=0; i<len-2; i++){  //第一个元素下标if(i>0 && nums[i]==nums[i-1]) continue;int j = i+1, k = len -1; //j是第二个元素的下标,k是第三个元素的下标while(j < k){List<Integer> tmplist= new ArrayList<>();if(j > i+1){  //去除重复的组合while(nums[j] == nums[j-1] && j<k) j++;}if(k < len-1){while(nums[k] == nums[k+1] && k>j) k--;}if(j >= k) break;if(nums[i] + nums[j] + nums[k] == 0){tmplist.add(nums[i]);tmplist.add(nums[j]);tmplist.add(nums[k]);ans.add(tmplist);j++; k--;}else if(nums[i] + nums[j] + nums[k] > 0) k--;else j++;}}return ans;}
}

http://www.yayakq.cn/news/985127/

相关文章:

  • 建设部设计规范网站如乐网站
  • 阿里巴巴网站图片怎么做的网站开发法律
  • 微信公众号做留言网站创意设计素材
  • 可以做视频的网站口腔网站建设
  • .net网站开发用的书籍电子商务专业怎么样
  • 怎么给自己喜欢的人做网站如何学会建网站
  • 优化建站网页设计html代码教程
  • 公司做网站需要哪些内容哪个不是网站开发工具
  • 重庆永川网站建设公司百度入口
  • 免费的网站入口在哪网站备案有什么好处
  • 经典网站赏析河南省建设监理协会官网
  • 北京站网站建设推广公司名字
  • 前端旅游网站行程怎么做wordpress authkey
  • 贞丰网站建设政务网站建设和技术维护制度
  • 哪个网站做免费广告好做问答网站要多少钱
  • 怎么查网站备案域名备案信息域名访问网站怎么进入
  • 云南省人防工程建设网站在线制作微信头像
  • 做网站的费用如何写分录哪个网站可以帮人做ppt
  • 没有域名可以做网站吗陕西省城乡建设学校网站
  • 自适应外贸网站开发文创设计
  • 政务网站开发理念360极速浏览器网站开发缓存
  • 网站上的中英文切换是怎么做的wordpress注册邮件
  • 织梦做网站要多长时间金华企业网站建设公司
  • 长春建站模板厂家面包店网站建设论文
  • 网站预订功能怎么做抖音代运营话术模板
  • html php网站开发报告怎么网上接网站开发单自己做
  • 网站从设计到制作个人做的好的淘宝客网站
  • 标准化建设考评网站网站建设设计企业
  • 做微网站需要域名吗中国商机网官网
  • 企业服务公司经营范围wordpress优化打开速度插件