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

个人网站网站建设方案书做网站用什么电脑

个人网站网站建设方案书,做网站用什么电脑,hishop,平面设计常用的软件18. 四数之和 原题链接:完成情况:解题思路:参考代码:错误经验吸取 原题链接: 18. 四数之和 https://leetcode.cn/problems/4sum/description/ 完成情况: 解题思路: /** * //HashMap只能记录…

18. 四数之和

  • 原题链接:
  • 完成情况:
  • 解题思路:
  • 参考代码:
  • 错误经验吸取

原题链接:

18. 四数之和
https://leetcode.cn/problems/4sum/description/

完成情况:

在这里插入图片描述

解题思路:

/**
* //HashMap只能记录key,value的结果
* //而不能记录产生这个结果的过程
*
* @param nums
* @param target
* @return
*/

思路全在代码注释里

参考代码:

package LeetCode算法题;import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;public class __18四数之和 {/***         //HashMap只能记录key,value的结果*         //而不能记录产生这个结果的过程** @param nums* @param target* @return*/public List<List<Integer>> fourSum(int[] nums, int target) {//参考之前的三数求和,以及四数直接结果求和,//难道是构造两两的两对,然后一个两对的集合,去和另外两个数去判断???List<List<Integer>> res = new ArrayList<List<Integer>>();int len = nums.length;if (nums == null || len < 4){return res;}Arrays.sort(nums);  //初始先将所有元素排好序,这样可以避免混乱的找要求数字for (int i=0;i<len-3;i++){if (i>0 && nums[i] == nums[i-1]){   //从第二个数开始判断continue;       //并且去重}//取完重复之后,固定一个点,剩下指针指向三个节点//然后进行左右判断if ((long)nums[i] + nums[i + 3] + nums[i + 2] + nums[i+1] > target){break;      //如果最左边四个数还比target大,那么说明已经没有数满足target了。}if ((long)nums[i] + nums[len - 3] + nums[len - 2] + nums[len-1] < target){//nums[i] + nums[len - 3] + nums[len - 2] + nums[len-1]continue;   //+最大的三个数,如果还小于的话,那么说明nums[i]还可以左走}/*int Left = i+1,Right = len -1;while (Left < Right){同三个数比大小,但这里是四个数,因此还剩三个数,所以需要指出三个指针*/for (int j = i+1;j<len-2;j++){if (j>i+1 && nums[j] == nums[j-1]){     //继续去重continue;}if ((long)nums[i] + nums[j] + nums[j+1] + nums[j+2] > target){//如果头四个数大于targetbreak;}if ((long)nums[i] + nums[j] + nums[len-2]+nums[len - 1] < target){//如果定了指针的左边两个数 + 右边的两个数   小于targetcontinue;   //说明左边的数,小了}/*int Left = i+1,Right = len -1;while (Left < Right){同三个数比大小,但这里是四个数,因此还剩三个数,所以需要指出三个指针*///然后仿照三个数比大小,锁定left,right去模仿移动//此时的指针,分别是i,j,left,rightint left = j+1,right = len - 1;while (left < right){long sum = (long)nums[i] + nums[j] + nums[left] + nums[right];if (sum == target){res.add(Arrays.asList(nums[i],nums[j],nums[left],nums[right]));while (left<right && nums[left] == nums[left+1]){left++;}left++;while (left < right && nums[right] == nums[right-1]){right--;}right--;}else if (sum<target) { //左边小了left++;}else {     //右边大了right--;}}}}return res;}
}

错误经验吸取

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

相关文章:

  • 网上移动厅官方网站诺诚建设工程有限公司网站
  • 苏省住房和城乡建设厅网站首页网站黑名单
  • 怎样建立网站卖东西做艺人资料卡的网站
  • 途牛网站建设策划书俄罗斯网站设计
  • 应用商店网站源码在网站开发中如何设置用户登录
  • 网站优化seo是什么91wordpress
  • 加大网站集约化建设管理建筑网建设通查询
  • 手机网站建设需求文档如何用python制作网页
  • 高端大气的医院网站网站建设课程报告
  • 宁阳县住房和城乡建设局网站互联网推广工作好做吗
  • 网站推广软件工具天津人事考试网
  • 重庆网站建设公司 wordpress后台加载很慢
  • 网址域名查询百度快速排名优化工具
  • 免费刷赞网站推广免费郓城菏泽网站建设
  • 南宁网站排名优化公司一个人如何做跨境电商
  • 企业每年向工商网站做申报质量好的购物平台
  • 漯河网站建设xknt广告传媒公司经营范围
  • 网站维护主要从哪几个方面做网站建设类课题的研究方法
  • asp.net mvc 5 网站开发之美网站建设轮播图
  • 有没有公司做农副产品网站的wap浏览器手机版
  • 松江网站建设公司怎么样每天稳定赚50以上的手游
  • 怎么搭建一个博客网站做视频教学网站服务器配置
  • 河北网站设计制作wordpress qq登陆插件
  • 中国工程建设焊接协会网站影视公司简介
  • 高端品牌网站设计公司网页设计与制作毕业设计怎么写
  • 湛江h5建站汕头seo网站管理
  • 编写网站的软件南宁网站建设醉懂网络
  • 临清做网站葫岛百度seo
  • 电商网站设计价格产品开发流程及每个流程内容
  • 房地产网站建设方案vs手表官网