LeetCode
来源:互联网 发布:java 进程创建原语 编辑:程序博客网 时间:2024/06/12 19:35
题目
在Two Sum的基础上进行了修改,输入数组是排序的。
思路
和《剑指Offer》的剑指Offer系列-面试题41:和为s的两个数字以及和为s的正数序列 一样,不再赘述。
当提交过后以为结果一定是乐于看见的AC,结果发现出现了Submission Result: Time Limit Exceeded
错误。查看错误用例,发现是下面这玩意:
[0,……0,2,3,9,……9] (n多个相同的0和n多个相同的9)
5
想了想,可能是重复的数字太多,每次遍历都需要判断一次是否和target相等,于是加上了一个while
循环,跳过重复的数字。
代码
public int[] twoSum(int[] numbers, int target) { int[] res = new int[2]; if (numbers == null || numbers.length < 2) { return res; } int left = 0; int right = numbers.length - 1; while (left < right) { int tmp = numbers[left] + numbers[right]; if (tmp == target) { res[0] = left + 1; res[1] = right + 1; return res; } else if (tmp < target) { int num = numbers[left]; while (num == numbers[left]) { left++; } } else { int num = numbers[right]; while (num == numbers[right]) { right--; } } } return res;}
1 0
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- leetcode
- This app has been built with an incorrect configuration. Please configure your build for VectorDraw
- VMWare虚拟机通过主机shadowsocks代理上网
- uva439
- 深入解释Java7中运行UT的OutOfMemoryError: PermGen space
- Android 间断录制和播放实现
- LeetCode
- 创建注册表,设置和读取注册表中的值
- Python的基础—with...as介绍
- CMD命令——拷贝文件夹
- java 后台封装json数据
- Leetcode108——Convert Sorted Array to Binary Search Tree
- unity之跑马灯(UGUI+DOTween)
- RobotFramework+Jenkins持续集成-新建项目
- scrapy 教程