计算机算法试题含答案
算法设计与分析试卷
一、填空题(20分,每空2分)
1、算法的性质包括输入、输出、___、有限性。
2、动态规划算法的基本思想就将待求问题_____、先求
解子问题,然后从这些子问题的解得到原问题的解。
3、设计动态规划算法的4个步骤:
(1)找出____,并刻画其结构特征。
(2)_______。
(3)_______。
(4)根据计算最优值得到的信息,_______。
4、流水作业调度问题的johnson算法:
(1)令N1=___,N2={i|ai>=bj};
(2)将N1中作业依ai的___。
5、对于流水作业高度问题,必存在一个最优调度π,使得作业π(i)和π(i+1)满足Johnson不等式_____。
6、最优二叉搜索树即是___的二叉搜索树。
二、综合题(50分)
1、当(a1,a2,a3,a4,a5,a6)=(-2,11,-4,13,-5,-2)时,最大子段和为∑ak(2<=k<=4)____(5分)
2、由流水作业调度问题的最优子结构性质可知,T(N,0)=______(5分)
3、最大子段和问题的简单算法(10分)
int maxsum(int n,int *a,int & bestj)
{
intsum=0;
for (int i=1;i<=n;i++)
for (int j=i;j<=n;j++)
int thissum=0;
for(int k=i;k<=j;k++)_____;
if(thissum>sum){
sum=thissum;
______;
bestj=j;}
}
return sum;
}
4、设计最优二叉搜索树问题的动态规划算法
OptimalBinarysearchTree? (15分)
Void OptimalBinarysearchTree(int a,int n,int * * m, int * * w) {
for(int i=0;i<=n;i++) {w[i+1][i]=a[i]; m[i+1][i]=____;} for(int r=0;r for(int i=1;i<=n-r;i++){ int j=i+r; w[i][j]=w[i][j-1]+a[j]+b[j]; m[i][j]=______; s[i][j]=i; for(int k=i+1;k<=j;k++){ int t=m[i][k-1]+m[k+1][j]; if(_____) {m[i][j]=t; s[i][j]=k;} } m[i][j]=t; s[i][j]=k;} } 5、设n=4, (a1,a2,a3,a4)=(3,4,8,10), (b1,b2,b3,b4)=(6,2,9,15) 用两种方法求4个作业的最优调度方案并计算其最优值?(15分) 三、简答题(30分) 1、将所给定序列a[1:n]分为长度相等的两段a[1:n/2]和a[n/2+1:n],分别求出这两段的最大子段和,则a[1:n]的最大子段和有哪三种情形?(10分) 答: 2、由0——1背包问题的最优子结构性质,可以对m(i,j)建立怎样的递归式? (10分) 3、0——1背包求最优值的步骤分为哪几步?(10分) 参考答案: 填空题:确定性分解成若干个子问题最优解的性质 递归地定义最优值以自底向上的方式计算出最优值 构造最优解{i|ai bi的非增序排序min{bπ(i),aπ(i+1)}≥min{bπ(i+1),aπ(i)} 最小平均查找长度 综合题:20 min{ai+T(N-{i},bi)}(1= 法一:min(ai,bj)<=min(aj,bi) 因为min(a1,b2)<=min(a2,b1) 所以1→2 (先1后2) 由min(a1,b3)<=min(a3,b1) 得1→3 (先1后3) 同理可得:最后为1→3→4→2 法二:johnson算法思想 N1={1,3,4} N2={2} N11={1,3,4} N12={2} 所以 N11→N12 得:1→3→4→2 简答题:1 、(1)a[1:n]的最大子段和与a[1:n/2]的最大子段 和相同。 (2)a[1:n]的最大子段和与的最大子段a[n/2+1:n]和相同。 (3)a[1:n]的最大子段和为∑ak(i= 2、(1)m(i,j)=max{m(i+1,j),m(i+1,j-wi)+ui} (j>=wi) 或则m(i,j)= m(i+1,j) (0<=j (2)m(n,j)=un j>=wn 或则 m(n,j)=0 0<=j 3、(1)、p[n+1]={(0,0)} (2)、由p[i+1]→q[i+1], q[i+1]=p[i+1]⊕(wi,vi) (3)、Mij=p[i+1]∪q[i+1] Pi=Mij——其中的受控点=p[i+1]∪q[i+1]——其中的受控(4)、重复(2)-(3)直到求出P[1] 1.在一个算法中调用另一个算法时,系统需在运行被调用算法之前完成哪些工作?同时从 被调用算法返回调用算法需完成哪些工作? 答:在一个算法中调用另一算法时,系统需在运行被调用算法之前先完成三件事:(1)将所有实参指针、返回地址等信息传递给被调用算法; (2)为被调用算法的局部变量分配存储区; (3)将控制转移到被调用算法的入口。 在从被调用算法返回调用算法时需完成三件事: (1)保存被调用算法的计算结果; (2)释放分配给被调用算法的数据区; (3)依照被调用算法保存的返回地址将控制转移到调用算法。 2.动态规划算法求解问题的步骤? 答:动态规划法适用于解最优化问题。通常可以按以下4个步骤设计: (1)找出最优解的性质,并刻画其结构特征; (2)递归地定义最优值; (3)以自底向上的方式计算最优值; (4)根据计算最优值时得到的信息构造最优解。 3.线性规划法中单纯形算法的基本步骤? 答:步骤一选入基变量。 步骤二选离基变量。 步骤三做转轴变换。 步骤四转步骤一。 4.分治法的基本思想和原理是什么? 答:分治法的基本思想是将一个规模为n的问题分解为k个规模较小的子问题,这些子问题互相独立且与原问题相同。递归地解这些子问题,然后将各子问题的解合并得到原问题的解。 5.利用回溯法解决问题包含哪些步骤? 答:利用回溯法解题常包含以下3步骤: (1)针对所给问题,定义问题的解空间; (2)确定易于搜索的解空间结构; (3)以深度优先方式搜索解空间,并在搜索过程中用剪枝函数避免无效搜索。 五分析题(36分) 1.求下列函数的渐进表达式: 3n2+10n; n2/10+2n; 21+1/n; logn3; 10log3n 分析与解答: 3n2+10n=O(n2); n2/10+2n=O(2n); 21+1/n=O(1); logn3=O(logn); 10log3n=O(n) 2.讨论O(1)和O(2)的区别。 分析与解答: 根据符号O 的定义易知O(1)=O(2)。用O(1)或O(2)表示同一个函数时,差别仅在于其中的常数因子。 3.按渐近阶排列表达式 按照渐近阶从低到高的顺序排列以下表达式:4n 2,logn ,3n ,20n ,2,n 2/3。又n!应该排在哪一位? 分析与解答: 按渐近阶从低到高,函数排列顺序如下:2,logn ,n 2/3,20n ,4n 2,3n ,n !。 4.算法效率 (1)假设某算法在输入规模为n 时计算时间为T(n)=3*2n 。在某台计算机上实现并完成该算法 的时间为t 秒。现有另一台计算机,其运行速度为第一台的64倍,那么在这台新机器上用同一算法在t 秒内能解输入规模为多大的问题? (2)若上述算法的计算时间改进为T(n)=n 2,其余条件不变,则在新机器上用t 秒时间能解输 入规模为多大的问题? (3)若上述算法的计算时间进一步改进为T(n)=8,其余条件不变,那么在新机器上用t 秒时间能解输入规模为多大的问题? 分析解答: (1)设新机器用同一算法在t 秒内能解输入规模为n1的问题。因此有:t=3*22=3*2n1/64,解 得你n1=n+6。 (2)n12=64n 2n1=8n 。 (3)由于T(n)=常数,因此算法可解任意规模的问题。 5.阶乘函数 阶乘函数可递归地定义为: int factorial(int n) { if(n==0) return 1; return n* factorial(n-1); } 0)!1(1!>=???-=n n n n n 6.Fibonacci 数列 无穷数列1,1,2,3,5,8,13,21,34,55,……,称为Fibonacci 数列。它可以递归地定义为: 请对这个无穷数列设计一个算法,并进行描述(自然语言描述和VC++描述). 第n 个Fibonacci 数可递归地计算如下: int fibonacci (int n) { if (n <= 1) return 1; returnfibonacci (n-1)+fibonacci (n-2); } 7.循环赛日程表 设有n=2k 个运动员要进行兵乓球循环赛。现在要设计一个满足以下要求的比赛日程表: (1)每个选手必须与其他n-1个选手各赛一次; (2)每个选手一天只能赛一次; (3)循环赛一共进行n-1天。 请设计一个算法解决以上问题,并进行描述(自然语言和C++语言) 按分治策略,将所有的选手分为两半,n 个选手的比赛日程表就可以通过为n/2个选手设计的比赛日程表来决定。递归地用对选手进行分割,直到只剩下2个选手时,比赛日程表的制定就变得很简单。这时只要让这2个选手进行比赛就可以了。 8.有一批集装箱要装上一艘载重量为c 的轮船。其中集装箱i 的重量为Wi 。最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。 分析回答以下两个问题: (1)分析以上最优装载问题具有贪心选择性质 (2)用C++程序进行正确的算法描述 分析与解答: (1) 设集装箱已依其重量从小到大排序,(x1,x2,…,x n )是最有装载问题的一个最优解。又 设k=min{i|x i =1}。易知,如果给定的最有装载问题有解,则1≤k ≤n 。 ② 当k=1时,(x1,x2,…,x n )是满足贪心选择性质的最优解。 ②当k>1时,取y 1=1;y k =0;y i =x i ,1 110)2()1(11)(>==?? ???-+-=n n n n F n F n F 因此,()是所给最有装载问题的可行解。 另一方面,由知,()是满足贪心选择性质的最优解。所以,最优装载问题具有贪心 选择性质。 (2)最优装载问题可用贪心算法求解。采用重量最轻者先装的贪心选择策略,可产生最优装载问题的最优解。具体算法描述如下。 template void Loading(int x[], Type w[], Type c, int n) { int *t = new int [n+1]; Sort(w, t, n); for (int i = 1; i <= n; i++) x[i] = 0; for (int i = 1; i <= n && w[t[i]] <= c; i++) {x[t[i]] = 1; c -= w[t[i]];} } 计算机基础知识试题及 答案全 标准化工作室编码[XX968T-XX89628-XJ668-XT689N] 《大学计算机》基础知识试题及答案 (说明:将认为正确答案的字母填写在每小题后面的括号内) 1.世界上第一台通用电子数字计算机诞生于( A )。 A.美国B.英国C.德国 D.日本 2.世界上第一台通用电子数字计算机诞生于( B )。 A.1953年B.1946年C.1964年 D.1956年 3.第一台电子计算机是1946年在美国研制的,该机的英文缩写名是 (A )。 4.一个完整的微型计算机系统应包括( C )。 A.计算机及外部设备 B.主机箱、键盘、显示器 和打印机 C.硬件系统和软件系统 D.系统软件和系统硬件 5.计算机的中央处理器CPU包括运算器和( C )两部分。 A.存储器B.寄存器C.控制器 D.译码器 6.下列设备中,( D )不是微型计算机的输出设备。 A.打印机B.显示器C.绘图仪 D.扫描仪 7.下列各项中,不属于多媒体硬件的是(D )。 A.光盘驱动器 B.视频卡 C.音频卡 D.加密卡 8.计算机中对数据进行加工与处理的部件,通常称为( A )。 A.运算器 B.控制器 C.显示器 D.存储器 9.运算器的组成部分不包括( B )。 A.控制线路 B.译码器 C.加法器 D.寄 存器 10.把内存中的数据传送到计算机的硬盘,称为( D )。 A.显示 B.读盘 C.输入 D.写盘 11.用MIPS为单位来衡量计算机的性能,它指的是计算机的( B ),指 的是每秒处理的百万级的机器语言指令数。 A.传输速率 B.运算速度 C.字长 D.存储器容量 12.计算机硬件的核心部件是( A )。 A.中央处理器B.存储器C.运算器D.控制器13.在外部设备中,打印机属于计算机的( B )设备。 A.输入B.输出C.外存储D.内存储 14.CGA、EGA和VGA标志着( C )的不同规格和性能。 A.打印机 B.存储器 C.显示器 D.硬 盘 15.硬盘上原存的有效信息,在下列哪种情况下会丢失( C )。 A.通过海关的X射线监视仪 B.放在盒内半年没有使用 C.放在强磁场附近 D.放在零下10摄 氏度的库房中 16.人们把以( A )为硬件基本部件的计算机称为第四代计算机。 A.大规模和超大规模集成电路和RAM C.小规模集成电路 D.磁带与磁盘 17.用计算机管理科技情报资料,是计算机在(B )方面的应用。 A.科学计算 B.数据处理 C.实时控制 D.人 工智能 18.主机板上CMOS芯片的主要用途是( C )。 A.管理内存与CPU的通讯 B.增加内存的容量 C.储存时间、日期、硬盘参数与计算机配置信息 D.存放基本输入输出系统程序、引导程序和自检程序 19.下列有关存储器读写速度的排列,正确的是(B )。 >Cache>硬盘B.Cache>RAM>硬盘 >硬盘>RAM D.RAM>硬盘>Cache 20.使用Cache可以提高计算机运行速度,这是因为(C )。 增大了内存的容量扩大了硬盘的容量 缩短了CPU的等待时间可以存放程序和数据 21.一台微机的型号中含有486、586等内容时,其含义是( A )。 A.运算控制单元的档次 B.软盘容量大小 算法设计与分析试卷 一、填空题(20分,每空2分) 1、算法的性质包括输入、输出、___、有限性。 2、动态规划算法的基本思想就将待求问题_____、先求 解子问题,然后从这些子问题的解得到原问题的解。 3、设计动态规划算法的4个步骤: (1)找出____,并刻画其结构特征。 (2)_______。 (3)_______。 (4)根据计算最优值得到的信息,_______。 4、流水作业调度问题的johnson算法: (1)令N1=___,N2={i|ai>=bj}; (2)将N1中作业依ai的___。 5、对于流水作业高度问题,必存在一个最优调度π,使得作业π(i)和π(i+1)满足Johnson不等式_____。 6、最优二叉搜索树即是___的二叉搜索树。 二、综合题(50分) 1、当(a1,a2,a3,a4,a5,a6)=(-2,11,-4,13,-5,-2)时,最大子段和为∑ak(2<=k<=4)____(5分) 2、由流水作业调度问题的最优子结构性质可知,T(N,0)=______(5分) 3、最大子段和问题的简单算法(10分) int maxsum(int n,int *a,int & bestj) { intsum=0; for (int i=1;i<=n;i++) for (int j=i;j<=n;j++) int thissum=0; for(int k=i;k<=j;k++)_____; if(thissum>sum){ sum=thissum; ______; bestj=j;} } return sum; } 4、设计最优二叉搜索树问题的动态规划算法 OptimalBinarysearchTree? (15分) Void OptimalBinarysearchTree(int a,int n,int * * m, int * * w) { for(int i=0;i<=n;i++) {w[i+1][i]=a[i]; m[i+1][i]=____;} for(int r=0;r 职称计算机考试WIN7模块历年真题及答案1?将宽带连接的拨号选项设置为【连接时显示进度】步骤1单击【更改设配器设置】 步骤2 在【宽带连接】图标上单击鼠标右键,选择【属性(R)】 步骤3单击【选项】选项卡 步骤4勾选【连接时显示进度(D)】选项卡 步骤5单击【确定】按钮 2.清空浏览器的临时文件并删【Cookies】文件 步骤1单击【标题栏】右上角【设置】按钮“” 步骤2单击【In ternet选项(O)J 步骤3单击【删除(D)…】 步骤4勾选【临时Intenet文件和网站文件(T)】 步骤5勾选【Cookie和网站数据(O)】 步骤6单击【删除(D)] 步骤7单击【确定】按钮 3?将网站位置由工作网络更改为公用网络 步骤1单击【任务栏]中【In ternet网络]图标“ 口” 步骤2点击【打开网络和共享中心] 步骤3单击【工作网络] 步骤4选择【公用网络] 步骤5单击右上角【关闭]按钮“ P 4?将当前网页以【Wet档案,单个文件(*mht)】类型【简体中文(GB18030)】编码,按默认文件名保存在默认文件夹下。 步骤1单击右上角【设置]按钮“ ”-【文件(F)]-【另存为(A)…】 步骤2单击【保存类型(T)]下拉框,选择【Web当案,单个文件(*.mht )] 步骤3单击【编码(E)]下拉框,选择【简体中文 (GB18O30]。 步骤4选择【简体中文(GB18030。 步骤5单击【保存(S)】。 5. 设置家庭/工作网络位置允许Media Center Extender 程序通过 Win dows防火墙 步骤1单击【系统和安全】 步骤2单击【允许程序通过Win dows防火墙】 步骤3从下拖动滚动条:在红框处单击鼠标左键,拖动到蓝框 步骤4勾选【Windows Centee Extender 】 步骤5勾选【家庭/ 工作(专用)】 步骤6单击【确定】按钮 6. 打开控制面板窗口,将Interent 选项中的隐私设置为【阻止所有Cookie 】 步骤1单击【开始】图标 步骤2单击【控制面板】 步骤3单击【网络和Internet 】按钮 步骤4单击【Internet 选项】 步骤5单击【隐私】选项卡 步骤6把【设置】滑块拖至顶部黑框处 步骤7单击【确定】按钮 【 数值计算方法试题一 一、 填空题(每空1分,共17分) 1、如果用二分法求方程043=-+x x 在区间]2,1[内的根精确到三位小数,需对分( )次。 2、迭代格式)2(2 1-+=+k k k x x x α局部收敛的充分条件是α取值在( )。 3、已知?????≤≤+-+-+-≤≤=31)1()1()1(211 0)(2 33x c x b x a x x x x S 是三次样条函数, 则 a =( ), b =( ), c =( )。 4、)(,),(),(10x l x l x l n 是以整数点n x x x ,,,10 为节点的Lagrange 插值基函数,则 ∑== n k k x l 0)(( ), ∑== n k k j k x l x 0 )(( ),当2≥n 时 = ++∑=)()3(20 4x l x x k k n k k ( )。 ; 5、设1326)(2 47+++=x x x x f 和节点,,2,1,0,2/ ==k k x k 则=],,,[10n x x x f 和=?07 f 。 6、5个节点的牛顿-柯特斯求积公式的代数精度为 ,5个节点的求积公式最高代数精度为 。 7、{}∞ =0)(k k x ?是区间]1,0[上权函数x x =)(ρ的最高项系数为1的正交多项式族,其中1)(0=x ?,则?= 1 4)(dx x x ? 。 8、给定方程组?? ?=+-=-2211 21b x ax b ax x ,a 为实数,当a 满足 ,且20<<ω时,SOR 迭代法收敛。 9、解初值问题 00 (,)()y f x y y x y '=?? =?的改进欧拉法 ??? ??++=+=++++)],(),([2),(] 0[111] 0[1n n n n n n n n n n y x f y x f h y y y x hf y y 是 阶方法。 单选题 1、国税系统网络安全管理办法要求禁止在工作机上使用来历不明的磁盘、光盘等存储介质,纳税人因办税报送的的数据,必须在()上查杀病毒后导入数据。 A、未联网的单机 B、连接互联网的计算机 C、装有杀毒软件的金税内网计算机 D、任意计算机 2、您可能经常听别人说,某台电脑的内存不够了,硬盘太小了之类的话。这里的“不够”、“太小”都指的是它们的() A : 体积 B : 面积 C : 容量 D : 数量 3、计算机网络的目标是实现____。 A、数据处理 B、文献检索 C、资源共享和信息传输 D、信息传输 4、通过Internet发送或接收电子邮件(E-mail)的首要条件是应该有一个电子邮件(E-mail)地址,它的正确形式是____。 A、用户名@域名 B、用户名#域名 C、用户名/域名 D、用户名.域名 5、国税系统所有计算机和服务器必须安装总局统一的防病毒软件是() A、金山毒霸 B、诺顿防病毒软件 C、瑞星杀毒软件 D、卡巴斯基杀毒软件 6、许多黑客攻击都是利用软件实现中的缓冲区溢出的漏洞,对于这一威胁,最可靠的解决方案是什么? A.安装防病毒软件 B.给系统安装最新的补丁 C.安装防火墙 D.安装入侵检测系统 7、以下不属于防火墙作用的是______。 A、过滤信息 B、管理进程 C、清除病毒 D、审计监测 8、按照《互联网信息服务管理办法》,从事经营性互联网信息服务,除应当符合《电信条例》规定的要求外,还应当有健全的_______ 保障措施。 A、防火安全; B、保安; C、网络与信息安全 9、利用互联网实施违法行为,违反社会治安管理,尚不构成犯罪的,由_________依照《治安管理处罚条例》予以处罚。 A、人民法院 B、公安机关 C、工商部门 4.2在下列情况下求解递归关系式T(n)=g(n) 2T(n/2)f(n)n足够小 否则 当①n=2kg(n)=O (1)和f(n)=O(n); ②n=2kg(n)=O (1)和f(n)=O (1)。 解: T(n)=T(2k)=2 T(2k-1)+f(2k)=2(2 T(2k-2)+f(2k-1)) +f(2k) =22T(2k-2)+21f(2k-1)+ f(2k) =…… =2kT (1)+2k-1f (2)+2k-2f (22)+…+20f(2k)kk-1k-220k=2g(n)+ 2f (2)+2f (2)+ (2) (2)①当g(n)=O (1)和f(n)=O(n)时,计算机基础知识试题及答案全
计算机算法试题含答案1
职称计算机考试WIN模块历年真题及答案
数值计算方法试题及答案
计算机试题及答案
《计算机算法基础》第三版,课后习题答案