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

合肥网站建设方案朝阳区seo搜索引擎优化怎么样

合肥网站建设方案,朝阳区seo搜索引擎优化怎么样,浙江省建设银行网站,wordpress更改固定链接404这段代码实现了在一个非递减排序的数组中找到两个数,使它们的和等于目标值的算法。算法使用了双指针技术,具体思想如下: 算法思想: 初始化指针:定义两个指针 left 和 right,分别指向数组的起始位置和末尾位…

在这里插入图片描述

这段代码实现了在一个非递减排序的数组中找到两个数,使它们的和等于目标值的算法。算法使用了双指针技术,具体思想如下:

算法思想:

  1. 初始化指针:定义两个指针 leftright,分别指向数组的起始位置和末尾位置。left 从左向右遍历,right 从右向左遍历。

  2. 计算当前和

    • 在循环中,每次计算 numbers[left]numbers[right] 的和,记为 sum
  3. 判断是否满足目标值

    • 如果 sum 等于目标值 target,则找到了符合条件的两个数,此时返回它们的索引(题目要求索引从1开始,所以要将数组下标 leftright 各加1)。
    • 如果 sum 小于目标值 target,说明需要更大一点的数才能达到目标值,因此将 left 指针向右移动一位,以增加 sum
    • 如果 sum 大于目标值 target,说明需要更小一点的数才能达到目标值,因此将 right 指针向左移动一位,以减小 sum
  4. 返回结果

    • 如果在循环结束后没有找到符合条件的两个数,返回一个空数组(虽然根据题目描述,总会有一个解,因此这一步通常不会被执行)。

时间复杂度

该算法的时间复杂度是 (O(n)),因为每次循环中指针 leftright 都会向中间移动,最多需要遍历整个数组一次。

总结

此算法利用了数组的有序性,通过双指针逐步逼近目标值,避免了暴力解法的多重循环,从而提升了效率。

java solution

class Solution {public int[] twoSum(int[] numbers, int target) {int left = 0;int right = numbers.length - 1;int sum = 0;int[] result = new int[2];while(left != right) {sum = numbers[left] + numbers[right];if(sum == target) {result[0] = left + 1;result[1] = right + 1;return result;}else if(sum < target) {left++;} else {right--;}}return new int[] {};     }
}
http://www.dinnco.com/news/24383.html

相关文章:

  • 济南网站建设 力推聚搜网络全网营销推广方式
  • 郑州哪有做网站的公司南宁做网站公司
  • 阿里去可以做几个网站企业网站推广渠道有哪些
  • 百度景安空间网站东莞网络公司排行榜
  • 网站美工做确认取消对话框西安seo经理
  • 做外贸首先要做网站百度推广一般要多少钱
  • kangle搭建wordpress深圳seo优化方案
  • 免费电子商务网站建设搜索引擎推广试题
  • wordpress附加字段镇江seo
  • 南京网站制作希丁哥广东seo教程
  • 专业app网站建设哪家好东莞seo计费管理
  • 南京专业网站制作多少钱seo职位
  • 网站开发学什么编程语言为什么打开网址都是站长工具
  • 竹妃怎么在公众号里做网站网络营销推广专家
  • 南阳市宛城区疫情最新消息郑州seo课程
  • 哈尔滨网站开发公司电话培训计划模板
  • 类似优酷的网站开发企业网站建设目标
  • 音乐网站开发与设计小学生班级优化大师
  • 网站建设属于什么发票seo中国是什么
  • 杭州做网站套餐2023全民核酸又开始了
  • 做相册集什么网站青岛招聘seo
  • 新疆生产建设兵团第七师门户网站白山seo
  • 网站建设管理与维护网站关键词排名软件推荐
  • 怎么添加网站图标百度站长之家工具
  • 网站如何做才能被百度等收录单页网站排名优化
  • wordpress上传网站独立源码培训体系包括四大体系
  • 公司财务记账软件杭州云优化信息技术有限公司
  • 电商网站功能模块图企业整站seo
  • 温州市网站建设活动推广方式都有哪些
  • 注册公司上什么网站小熊代刷推广网站