【题目】输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可,例如输入数组1、2、4、7、11、15和数字 15。由于4+11=15,因此输出4 和11。
【思路】升序数组,按照头尾元素之和进行判断,如果大于和值,尾前移一位,如果小于和值头后移一位。
【代码】
本文介绍了一种在已排序数组中查找两个数使其和为特定值的算法,该算法的时间复杂度为O(n)。通过比较数组首尾元素之和与目标值,逐步调整搜索范围。
【题目】输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可,例如输入数组1、2、4、7、11、15和数字 15。由于4+11=15,因此输出4 和11。
【思路】升序数组,按照头尾元素之和进行判断,如果大于和值,尾前移一位,如果小于和值头后移一位。
【代码】

被折叠的 条评论
为什么被折叠?