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

frontpage新建网站备案关闭网站

frontpage新建网站,备案关闭网站,wordpress 百度地图插件,百度竞价渠道户题目链接#xff1a;18. 四数之和 - 力扣#xff08;LeetCode#xff09; 这道题是在三数之和上改编出来的#xff0c;在写这道题之前可以尝试以下三数之和#xff08;15. 三数之和 - 力扣#xff08;LeetCode#xff09;#xff09;#xff1b; 1.常规解法#xf…题目链接18. 四数之和 - 力扣LeetCode 这道题是在三数之和上改编出来的在写这道题之前可以尝试以下三数之和15. 三数之和 - 力扣LeetCode 1.常规解法会超时 由于这道题的结果不能出现含相同元素的三元组则可以先对目标数组排以防出现结果中元素相同但顺序不同的情况 接下可以遍历这个数组先找到所有的三元组再挑选出符合条件的三元组代码如下 public ListListInteger fourSum(int[] nums, int target) {ListListInteger ret new ArrayList();int n nums.length;Arrays.sort(nums);for (int i 0; i n; i) {for (int j i 1; j n; j) {for (int k j 1; k n; k) {for (int l k 1; l n; l) {if ((long)nums[i] (long)nums[j] (long)nums[k] (long)nums[l] (long)target) {ListInteger list new ArrayList();list.add(nums[i]);list.add(nums[j]);list.add(nums[k]);list.add(nums[l]);if (!ret.contains(list)) {ret.add(list);}}}}}}return ret;} 注意我们再进行判断时涉及到四个数据相加由于整形数据的最大值是2147483647,会出现1000000000 1000000000 1000000000  1000000000  -294967296的情况这与实际情况不符这时就需要类型转换由于long类型的数据范围更大就可以将int转化为long再相加比较。 2.双指针算法 和三数之和一样我么可以先固定最后一个数在前面的数中找到和为target - 最后一个数 因为有去重操作可以先对数组从小到大排序 先定义四个指针p1p2leftrightp1指向最后一个数p2指向倒数第二个数left指向第一个数right指向p2前一个数 现保持p1和p2不动让left与right相向运动若(long)nums[left] (long)nums[right] (long)nums[p1] (long)nums[p2] target则将这个四元组添加到结果中由于不能出现出重复的四元组就需要去除与left和right指向元素相同的元素若(long)nums[left] (long)nums[right] (long)nums[p1] (long)nums[p2]  target由单调性知以left为基准right左边的数均小于right指向的元素相加之后结果必小于target就需要将left向右移动一位若(long)nums[left] (long)nums[right] (long)nums[p1] (long)nums[p2]  target由单调性知以right为基准left右边的元素均大于left指向的元素相加之后结果必大于target就需要将right左移一位 当left与right相遇后内层的一轮循环就结束了就需要将p2向左移动一位同样的也需要进行去重操作除去与p2指向元素相同的元素 当p21时p2已经走完一遍就需要向左移动p1继续下一轮循环同样的也需要进行去重操作去除与p1指向元素相同的元素流程图与代码如下 public ListListInteger fourSum(int[] nums, int target) {ListListInteger ret new ArrayList();Arrays.sort(nums);int n nums.length;int p1 n - 1;while (p1 2) {int p2 p1 - 1;while (p2 1) {int left 0;int right p2 - 1;while (left right) {if ((long)nums[left] (long)nums[right] (long)nums[p1] (long)nums[p2] target) {ListInteger list new ArrayList();list.add(nums[left]);list.add(nums[right]);list.add(nums[p1]);list.add(nums[p2]);ret.add(list);int numLeft nums[left];while (nums[left] numLeft left right) {left;}int numRight nums[right];while (nums[right] numRight left right) {right--;}} else if ((long)nums[left] (long)nums[right] (long)nums[p1] (long)nums[p2] target) {left;} else {right--;}}int numP2 nums[p2--];while (nums[p2] numP2 p2 1) {p2--;}}int numP1 nums[p1--];while (nums[p1] numP1 p1 2) {p1--;}}return ret;} 希望读者指出不足之处
http://www.hkea.cn/news/14299428/

相关文章:

  • 中文网站常用字体连锁酒店的网站建设
  • 网络公司做的网站被告图片侵权jsp网站开发平台
  • 徐州住房和城乡建设局网站如何网站做百度推广
  • 宣武富阳网站建设不用写代码可以做网站的软件
  • vs做网站应该新建什么wordpress标签生成器
  • 邢台网站定制咸宁商城网站建设
  • 做亚马逊外国网站需要语言好吗哪个网站可以代做软件
  • 定制网站的制作流程自助建站平台有哪些
  • 盐城市亭湖区建设局网站学习建设网站
  • 装修公司做推广网站怎么弄电子商务网站建设运行环境
  • wap 网站 开发最近中文字幕mv在线视频
  • 制作简单的站点推广方案wordpress 礼物说模板
  • 网站制作哈尔滨网络公司除了建网站
  • 大庆医院网站建设方案英文网站营销
  • phthon网站开发wordpress支付文件在哪里设置密码
  • 电烤箱做蛋糕网站seo是什么学校
  • 基础建设审计网站专业建站流程
  • 360网站seo优化怎么做wordpress打赏赞插件
  • 双公示 网站专栏建设wordpress时间代码
  • ppt网站哪家比较好小学生摘抄新闻2024版四年级
  • 有哪些好的做网站公司好wordpress用thinkphp
  • php项目网站建设方案书东莞网站建设工作室
  • 企业网站管理系统登录wordpress导航网址
  • 温州大军建设有限公司网站wordpress内部优化
  • 广西北海网站建设东营大众网
  • 公司网站设计哪家公司好兴化建设局网站
  • 网站批量修改百度网盘资源分享
  • 淮南建设工程信息网站做淘宝那样的网站麻烦吗
  • 自己做音乐网站做外汇看哪些网站
  • 做网站设计需要学会哪些昭通建设局网站