博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
167. Two Sum II - Input array is sorted
阅读量:5106 次
发布时间:2019-06-13

本文共 1177 字,大约阅读时间需要 3 分钟。

题目:

Given an array of integers that is already sorted in ascending order, find two numbers such that they add up to a specific target number.

The function twoSum should return indices of the two numbers such that they add up to the target, where index1 must be less than index2. Please note that your returned answers (both index1 and index2) are not zero-based.

You may assume that each input would have exactly one solution.

Input: numbers={2, 7, 11, 15}, target=9

Output: index1=1, index2=2

链接: 

2/19/2017, Java

没有想到用binary search的方法,就是两个指针每次走1步的算法。

1 public class Solution { 2     public int[] twoSum(int[] numbers, int target) { 3         int i = 0; 4         int j = numbers.length - 1; 5         int sum = 0; 6         int[] ret = new int[2]; 7          8         while (i < j && i >= 0 && j <= numbers.length - 1) { 9             sum = numbers[i] + numbers[j];10             if (sum > target) j--;11             else if (sum < target) i++;12             else {13                 ret[0] = i + 1;14                 ret[1] = j + 1;15                 return ret;16             }17         }18         return ret;19     }20 }

 

转载于:https://www.cnblogs.com/panini/p/6418878.html

你可能感兴趣的文章
移动端页面头部定义
查看>>
职责链模式(Chain of Responsibility)
查看>>
C++:同名隐藏和赋值兼容规则
查看>>
EntityFrameWork 实现实体类和DBContext分离在不同类库
查看>>
Microsoft .NET 远程处理:技术概述(代理模式)
查看>>
新手算法学习之路----二叉树(在一个二叉查找树中插入一个节点)
查看>>
autopep8
查看>>
GIT在Linux上的安装和使用简介
查看>>
java 类型转型
查看>>
基于C#编程语言的Mysql常用操作
查看>>
【转】Java反射 之 反射基础
查看>>
mysql数据库备份和还原的常用命令
查看>>
s3c2440实验---定时器
查看>>
HBase配置性能调优(转)
查看>>
MyEclipse10安装SVN插件
查看>>
[转]: 视图和表的区别和联系
查看>>
Regular Experssion
查看>>
python中的字符编码
查看>>
图论例题1——NOIP2015信息传递
查看>>
uCOS-II中的任务切换-图解多种任务调度时机与问题
查看>>