首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
输入一个按升序排序过的整数数组{1、2、4、7、11、15}以及一个整数数字15,我们可以从该数组中找到两个数字,即4和11,使得4+11=15。请实现一个时间上尽可能高效率的算法,当输入一个已经按升序排序过的整数数组和一个整数数字,在数组中查找两个数,使
输入一个按升序排序过的整数数组{1、2、4、7、11、15}以及一个整数数字15,我们可以从该数组中找到两个数字,即4和11,使得4+11=15。请实现一个时间上尽可能高效率的算法,当输入一个已经按升序排序过的整数数组和一个整数数字,在数组中查找两个数,使
admin
2017-11-20
47
问题
输入一个按升序排序过的整数数组{1、2、4、7、11、15}以及一个整数数字15,我们可以从该数组中找到两个数字,即4和11,使得4+11=15。请实现一个时间上尽可能高效率的算法,当输入一个已经按升序排序过的整数数组和一个整数数字,在数组中查找两个数,使得它们的和正好是输入的那个整数数字。如果有多对数字的和等于输入的整数数字,输出任意一对即可。要求:
根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法实现如下: boo1 indTwoNumbersWithSum { //以下都为FindTwoNumbersWithSum函数的参数 int data [], //己排序的数组 unsigned int length, //已排序数组的长度 int&num1, //第一个数字 int&num2, //第二个数字 int sum, //输入的整数数字 } { boo1 found=faise; //空数组将会出错 if(1ength<1) return found; int ahead=length-1; int behind=0; while(ahead>behind) { int curSum=data[ahead]+data[behind]; //如果两个数之和恰好等于输入的数字 i f(curSum==sum) { numl=data[behind]; num2=data[ahead]; found=true, break; } //如果两个数之和大于输入的数字,将大的数字减少 else if(curSum>sum) ahead--; //如果两个数之和小于输入的数字,将小的数字加大 else behind++; } return found; }
解析
转载请注明原文地址:https://kaotiyun.com/show/2VRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1917年发生的开辟人类历史新纪元的重大事件是()。
1994年5月,江泽民在进一步强调正确处理改革、发展、稳定的关系时指出()。
下列现象均属于明朝手工业进步的表现的是()①嘉万年间民营手工业渐居主要地位②匠役制度瓦解③出现了雇佣劳动、组织手工工场的经营方式④加强了对工匠的剥削,工匠的人身依附关系加强
西汉初年,西域共有36国,其中以()人口最多。
在“冷战”形成的过程中,影响苏联领导人对美政策变化的关键性事件是()。
根据下列史料,说明朝鲜社会性质发生了怎样的变化。第四款朝鲜釜山之草粱项设有日本公馆,久为两国人民通商之地。从今日起,改革从前惯例及岁遣船等事,以此次新订条款为标准,办理贸易事务,朝鲜政府开放第五款所载两口岸,准日本人民往来通商,随意在该两地租借地
试分析淝水之战前后南北政局的特点及其变化。
关于分页系统,回答下列问题:(1)在页表中,哪些数据项是为实现换页而设置的?(2)设某系统为每个作业进程分配3个内存块,某作业进程在运行访问中的轨迹为1,4,3,1,6,8,1,且每一页都是按请求装入的。问:先进先出页面置换算法(FIF
某机字长32位,采用定长操作码,单字长指令,共有机器指令100条,CPU内部有通用寄存器32个,可作变址寄存器用,存储器按字节编址,指令拟用直接寻址、间接寻址、变址寻址和相对寻址等4种寻址方式。(1)分别画出寻址方式由操作码指出和寻址方式由专用字
随机试题
高血压治疗原则,除外下列哪项
三级预防原则的叙述,不正确的是
护士巡视病房时发现患者闭式胸膜腔引流管脱出,首先要
划分法律部门的首要标准是()。
甲上市公司2006年7月1日向其50名高级管理人员每人授予1000份认购权证,该认购权证将于2010年末期满时行权,行权时高级管理人员将以6元/股购入该公司股票,该公司股票在授予日的公允价值为8元,2006年和2007年12月31日该股票公允价值均为12
对违法犯罪分子的改造工作,是教育人、挽救人和防止重新犯罪的特殊预防工作。()
十七届六中全会指出,文化改革发展的主力军是()。
以下关于离婚损害赔偿请求的表述中,正确的是()
Thereareplates,glasses,andcutleryonthetable.
______luckwouldhaveit,wearrivedintimetocatchthe8:00o’clockflighttoMadrid.
最新回复
(
0
)