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

太原小店区疫情最新消息广州seo优化

太原小店区疫情最新消息,广州seo优化,有限公司和公司哪个好,织梦网站 防黑文章目录 题目方法一:双指针(定2动2) 题目 方法一:双指针(定2动2) 这题可以参考【LeetCode-中等题】15. 三数之和 区别在于,三数之和只需要用一个for循环定住一个数,然后设置两个前…

文章目录

    • 题目
    • 方法一:双指针(定2动2)

题目

在这里插入图片描述

方法一:双指针(定2动2)

这题可以参考【LeetCode-中等题】15. 三数之和
区别在于,三数之和只需要用一个for循环定住一个数,然后设置两个前后指针来根据sum的值和目标值比较来滑动指针

那么这题也是同理的,我们需要做的事就是定住2个数,要用两个for循环定住两个数,然后设置两个前后指针来根据sum的值和目标值比较来滑动指针

里面的处理细节很多需要注意,提前处理一些不可能满足条件的情况,减少时间复杂度
在这里插入图片描述

class Solution {
//for定2 指针动2public List<List<Integer>> fourSum(int[] nums, int target) {int len =  nums.length;if(nums == null||len < 4 ) return new ArrayList<>();List<List<Integer>> res = new ArrayList<>();List<Integer> zres = null;Arrays.sort(nums);for(int i = 0 ;i< len-3 ;i++){//本身就是排序的数组  若第一个数就大于等于target了那么再加上任何一个数都会大于target,所以直接break//    if(nums[i]>target)  break;//这个条件不能要(对比LeetCode 15. 三数之和)  如果target是负数,第一个数大于target  在往下加可能会越来越小也是可以=taget的//但是如果target为0或正数,那么第一个数大于target  往下加会越来越大//去重操作  如果nums[i]==nums[i-1] 会得到一份与nums[i-1]一样的结果集if(i>0&&nums[i]==nums[i-1]) continue;// 若以i开头的四个元素就已经大于target了 那就无需做任何操作了,没必要了,在往后面加再怎么也会大于targetif((long)nums[i]+nums[i+1]+nums[i+2]+nums[i+3] > target) break;// 若以i开头元素和数组末尾的三个元素就还小于target了 那就没必要做此次循环,毕竟i加上后面最大的三个数都比target小if((long)nums[i]+nums[len-1]+nums[len-2]+nums[len-3] < target) continue;for(int j = i+1 ;j< len-2 ;j++){//这里就和 LeetCode 15. 三数之和  一样的原理  唯一多了一个提前判断// 这里的三个if与上面同理  if(j>i+1&&nums[j]==nums[j-1]) continue;if((long)nums[i]+nums[j]+nums[j+1]+nums[j+2] > target) break;if((long)nums[i]+nums[j]+nums[len-1]+nums[len-2] < target) continue;int left = j+1;int right = len-1;while(left < right){long sum =(long) nums[i]+nums[j]+nums[left]+nums[right];if(sum == target) {zres = new ArrayList<>();//满足要求的子结果集zres.add(nums[i]);zres.add(nums[j]);zres.add(nums[left]);zres.add(nums[right]);res.add(zres);//加入大结果集while(left < right &&nums[left]==nums[left+1]) left++;//两个指针的去重while(left < right &&nums[right]==nums[right-1]) right--;left++;//移动指针到不重复的新区域right--;}else if(sum >target)  right--;//缩小数值else left++;//扩大数值}}}return res;}
}
http://www.hrbkazy.com/news/30784.html

相关文章:

  • 平顶山北京网站建设广州专做优化的科技公司
  • p2p网站建设广州草根seo博客
  • 企业网站设计总结新乡百度网站优化排名
  • 最新远程网站建设服务大数据分析
  • 珠海移动网站建设公司排名如何做网站推广及优化
  • 代推广app下载广告网站建设网站排名优化
  • 站内推广的方式有哪些搜狗指数官网
  • 网页设计工程师工资上海seo网站策划
  • php开发网站 用java做后台?怎样进行seo
  • 电商网站建设浩森宇特关键词排名批量查询软件
  • wordpress自带文章类型seo快速优化文章排名
  • 站点和网页的关系做好网络推广的技巧
  • 安徽省建设干部学校网站关停seo外链发布技巧
  • 网站建设流程报价云南网站seo服务
  • 做网站推广合同关键词竞价排名是什么意思
  • 鲜花网站建设方案重庆网站页面优化
  • 诱导视频网站怎么做深圳市龙华区
  • 如何做学校网站app百度账号怎么注册
  • wordpress用户前端化五年级上册语文优化设计答案
  • 汝州市住房和城乡建设局网站上海关键词排名手机优化软件
  • 铁岭做网站seo网站分析工具
  • 海口专业网站搭建批发seo搜索培训
  • 益阳 网站制作维护seo发外链工具
  • wordpress如何添加链接菜单青岛百度seo代理
  • 网站备案信息真实性核验单 打印 隐藏淘宝怎么优化关键词排名
  • 东莞专业的网站设计价格发布友情链接
  • 淘宝店可以做团购的网站吗百度无锡营销中心
  • wordpress 游戏主题下载失败seo代理
  • 室内装修效果图制作百度推广优化排名怎么收费
  • 服装品牌厦门百度seo公司