当前位置: 首页 > 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.khdw.cn/news/33845.html

相关文章:

  • 美轮美奂的网站建设 为您独家定制谷歌下载官网
  • 南昌 网站建设网络营销师培训费用是多少
  • 贵州省城乡和住房建设厅网站百度推广怎么优化
  • 100件创意产品设计国外seo优化顾问
  • 怎么做中英文双语网站网络营销策划书应该怎么写
  • jsp动态网站开发实训心得商城系统开发
  • 建立企业网站费用b站推广网站
  • 网站网页怎么压缩网站优化包括哪些内容
  • 网站开发的接口文档钦州seo
  • 网站建设管理方案网络营销创意案例
  • 民族服装的网站建设营销引流都有什么方法
  • 有无广告销售版本"有广告免费无广告收费"网站成品网站源码
  • 网站建设vs网络推广百度指数搜索榜
  • 做团建活动网站新闻媒体发稿平台
  • 网络营销的方法有哪些方式杭州seo营销公司
  • 大连网站建设游戏网站交换友情链接
  • wap手机网站开发软件口碑营销的概念是什么
  • 扬州做公司网站的公司关键词指数查询
  • wordpress隐藏顶部seo有哪些网站
  • 上海企业网站seo网站关键词优化快速官网
  • 南京营销型网站建设百度搜索排名机制
  • 兴义市住房和城乡建设网站月销售app推广接单平台有哪些
  • 住房建设建设部网站最近实时热点新闻事件
  • 传奇私服游戏网站建设中国企业网
  • 视频上传网站建设国内外搜索引擎大全
  • 中端网站建设互联网营销师培训费用是多少
  • 方法数码做的网站怎么样网络营销是什么工作主要干啥
  • 网站内页百度提交口百度公司的企业文化
  • 做网站商城深圳网络营销和推广渠道
  • 游戏登录器列表更新网站建设徐州百度搜索网站排名