电子科技大学研究生算法设计与分析拟考题及答案评分细则 (2)

合集下载

2014-2015-1研究生算法设计与分析 A卷

2014-2015-1研究生算法设计与分析 A卷

一、 按照渐近阶从低到高的顺序排列以下表达式并简单说明理由:(10’) 4n2, logn, 3n, 20n, 2, n2/3, n!
二、 在分治法中, 通常将一个规模为 n 的问题分成 k 个规模为 n/m 的子问 题 来 求 解 。 分 治法 算 法 的 复 杂 度也 通 常 可 以 用 以 下 递 归 方 程 表 示 : T(n)=KT(n/m)+f(n) n>1。这个递归方程的计算比较复杂,递归树提供了 一个简单直观的近似求解方法。请利用递归树方法求解以下递归方程: (15’) T(n)=2T(n/2)+O(n) n>1.
杭州电子科技大学研究生考试卷 ( A )卷
考试课程 学 院 算法设计与分析 计算机学院 考试日期 专 业 学 号 (完 整) 2014 年 月 日 : —— : 任课教师 姓 名 成 绩 张彦斌
三、 试设计一种快速排序算法, (编程语言不限,可使用伪代码,要求 写出函数名称、参数及输出)(10’)
考生姓名
四、 考虑下面的整数线性规划问题
max ci xi
i 1 n ai xi b i 1 x 为非负整数,1 i n i n
试设计一个解此问题的动态规划算法,并分析共 2 页
五、 设 C={0,1,...,n-1}是 n 个字符的集合。求解关于 C 的任何最优前缀 码可以表示为多少位的编码序列,并证明之。 (15’ )
七、 回溯法搜索子集树和排列树的算法框架描述。 (伪代码) (10’)
六、 试设计一个解最大团问题的迭代回溯法。 (10’)
八、 栈式分支界限法将活结点表以后进先出(LIFO)的方式存储于一 个栈中。试设计一个解 0-1 背包问题的栈式分支界限法。 (15’)

算法设计与分析试卷及答案

算法设计与分析试卷及答案

算法设计与分析1、(1) 证明:O(f)+O(g)=O(f+g)(7分)(2) 求下列函数的渐近表达式:(6分)① 3n 2+10n;② 21+1/n;2、对于下列各组函数f(n)和g(n),确定f(n)=O(g(n))或f(n)=Ω(g(n))或f(n)=θ(g(n)),并简述理由。

(15分)(1);5log )(;log )(2+==n n g n n f (2);)(;log )(2n n g n n f == (3);log )(;)(2n n g n n f == 3、试用分治法对数组A[n]实现快速排序。

(13分)4、试用动态规划算法实现最长公共子序列问题。

(15分)5、试用贪心算法求解汽车加油问题:已知一辆汽车加满油后可行驶n 公里,而旅途中有若干个加油站。

试设计一个有效算法,指出应在哪些加油站停靠加油,使加油次数最少。

(12分)6、试用动态规划算法实现下列问题:设A 和B 是两个字符串。

我们要用最少的字符操作,将字符串A 转换为字符串B ,这里所说的字符操作包括:(1)删除一个字符。

(2)插入一个字符。

(3)将一个字符改为另一个字符。

将字符串A 变换为字符串B 所用的最少字符操作数称为字符串A 到B 的编辑距离,记为d(A,B)。

试设计一个有效算法,对任给的两个字符串A 和B ,计算出它们的编辑距离d(A,B)。

(16分)⎣⎦2/)(;3)(i i g i i f ==。

对于给定的两个整数n 和m ,要求用最少的变换f 和g 变换次数将n 变为m 。

(16分)1、⑴证明:令F(n)=O(f),则存在自然数n 1、c 1,使得对任意的自然数n ≥n 1,有:F(n)≤c 1f(n)……………………………..(2分)同理可令G(n)=O(g),则存在自然数n 2、c 2,使得对任意的自然数n ≥n 2,有:G(n)≤c 2g(n)……………………………..(3分)令c 3=max{c 1,c 2},n 3=max{n 1,n 2},则对所有的n ≥n 3,有: F(n)≤c 1f(n)≤c 3f(n)G(n)≤c 2g(n)≤c 3g(n)……………………………..(5分) 故有:O(f)+O(g)=F(n)+G(n)≤c 3f(n)+c 3g(n)=c 3(f(n)+g(n)) 因此有:O(f)+O(g)=O(f+g)……………………………..(7分) ⑵ 解:① 因为;01033)103(lim 222=+-+∞→n n n n n n 由渐近表达式的定义易知: 3n 2是3n 2+10n 的渐近表达式。

算法设计与分析(A)评分标准和参考答案

算法设计与分析(A)评分标准和参考答案

(占 1 分) 当调度方案是 2,3,1 时:
(占 1 分)

1 页 共
2 页
当调度方案是 3,1,2 时: 机器 1 机器 2 作业 3 2 作业 2 2+3=5 作业 1 5+2=7 完成时间和=5+6+8=19
2+3=5 5+1=6 7+1=8 (占 1 分)
它们所对应的完成时间和分别是 19,18,20,21,19,19; 因此最佳调度方案是 1,3,2; .其完成时间为 18。 (占 2 分)
2. 证明:设 F(N)=O(f)), 根据 O 的定义,存在正常数 C1 和 N1, 使得对所有 N>= N1 有 F(N)<=C1f(N); (占 2 分) 再设 G(N)= O(g), 根据 O 的定义,存在正常数 C2 和 N2, 使得对所有 N>= n2 有 G(N)<= C2f(n); (占 2 分) 令 C3=max{C1,C2},N3=max{N1,N2},h(N)=max{f,g},则对所有的 N>=N3,有:(占 2 分) F(N)<= C1f(N)<= C1h(N)<= C3h (N); 类似地有: G(N)<= C2f(N)<= C2h(N)<= C3h (N); 则: (占 2 分) O(f)+O(g)=F(N)+G(N)<= C3h (N)+ C3h (N) =2 C3h (N)=O(h)=O(max(f,g))
五、綜合题(每小题 12 分,共 24 分)
1.(每小问为 2 分) ①:i<=n ②:0 ③:i<=n-r+1 ④:i+r-1 ⑤:t[i][k]+ t[k+1][j]+w(i-1,k,j) ⑥: t[i][j] 2. 1 1 1 .这三个作业的可能的调度方案总数是:P3 P2 P1 =3*2*1=6; 具体的调度方案是 1,2,3; 1,3,2; 2,1,3; 2,3,1; 3,1,2; 3,2,1; .当调度方案是 1,2,3 时: 机器 1 机器 2 作业 1 2 2+1=3 作业 2 2+3=5 5+1=6 作业 3 5+2=7 7+3=10 完成时间和=3+6+10=19 . 当调度方案是 1,3,2 时: 机器 1 机器 2 作业 1 2 2+1=3 作业 3 2+2=4 4+3=7 作业 2 4+3=7 7+1=8 完成时间和=3+7+8=18 (占 1 分) 当调度方案是 2,1,3 时: 机器 1 机器 2 作业 2 3 3+1=4 作业 1 3+2=5 5+1=6 作业 3 5+2=7 7+3=10 完成时间和=4+6+10=20 机器 1 机器 2 作业 2 3 3+1=4 作业 3 3+2=5 5+3=8 作业 1 5+2=7 8+1=9 完成时间和=4+8+9=21

电子科技大学研究生入学考试试题计算机复试专业课面试问题锦集--答案仅供参案

电子科技大学研究生入学考试试题计算机复试专业课面试问题锦集--答案仅供参案

计算机复试问题锦集--答案仅供参案,没答案的问题请自己准备.不当之处敬请指出1. 什么是程序局部性,为什么会有程序的空间局部性?程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。

空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。

2. 比较TCP与UDPTCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。

TCP提供的是面向连接服务,提供可靠交付。

且具有流量控制和拥塞控制。

可用于可靠要求高的场合如:SMTP,FTP,HTTP等UDP提供的是无连接服务,提供不可靠交付,且无确认机制。

主要用于即时强的场合如:视频聊天,语音电话等。

3. 网络协议的三个核心要素,及概念.各起什么作用?语法,定义了数据与控制信息的格式;语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应;同步,定义了事件实现顺序的详细说明;4. 关系数据库都有那些操作,特点是什么?◇查询:选择、投影、连接、除、并、交、差◇数据更新:插入、删除、修改关系操作的特点:集合操作方式,即操作的对象和结果都是集合。

5. 解释一下网络体系结构,它得实现和理论有什么区别?是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。

网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。

国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。

而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。

6. 为了实现重定位需要哪些硬件?最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。

《算法分析与设计》期末试题及参考答案

《算法分析与设计》期末试题及参考答案

《算法分析与设计》期末试题及参考答案一、简要回答下列问题:1.算法重要特性是什么?2.算法分析的目的是什么?3.算法的时间复杂性与问题的什么因素相关?4.算法的渐进时间复杂性的含义?5.最坏情况下的时间复杂性和平均时间复杂性有什么不同?6.简述二分检索(折半查找)算法的基本过程。

7.背包问题的目标函数和贪心算法最优化量度相同吗?8.采用回溯法求解的问题,其解如何表示?有什么规定?9.回溯法的搜索特点是什么?10.n皇后问题回溯算法的判别函数place的基本流程是什么?11.为什么用分治法设计的算法一般有递归调用?12.为什么要分析最坏情况下的算法时间复杂性?13.简述渐进时间复杂性上界的定义。

14.二分检索算法最多的比较次数?15.快速排序算法最坏情况下需要多少次比较运算?16.贪心算法的基本思想?17.回溯法的解(x1,x2,……x n)的隐约束一般指什么?18.阐述归并排序的分治思路。

19.快速排序的基本思想是什么。

20.什么是直接递归和间接递归?消除递归一般要用到什么数据结构?21.什么是哈密顿环问题?22.用回溯法求解哈密顿环,如何定义判定函数?23.请写出prim算法的基本思想。

二、复杂性分析1、MERGESORT(low,high)if low<high;then mid←(low,high)/2;MERGESORT(low,mid);MERGESORT(mid+1,high);MERGE(low,mid,high);endifend MERGESORT2、procedure S1(P,W,M,X,n)i←1; a←0while i≤ n doif W(i)>M then return endifa←a+ii←i+1 ;repeatend3.procedure PARTITION(m,p)Integer m,p,i;global A(m:p-1)v←A(m);i←mlooploop i←i+1 until A(i) ≥v repeatloop p←p-1 until A(p) ≤v repeatif i<pthen call INTERCHANGE(A(i),A(p))else exitendifrepeatA(m) ←A(p);A(p) ←vEnd PARTITION4.procedure F1(n)if n<2 then return(1)else return(F2(2,n,1,1))endifend F1procedure F2(i,n,x,y)if i≤nthen call F2(i+1,n,y,x+y)endifreturn(y)end F25.procedure MAX(A,n,j)xmax←A(1);j←1for i←2 to n doif A(i)>xmax then xmax←A(i); j←i;endif repeatend MAX6.procedure BINSRCH(A,n,x,j)integer low,high,mid,j,n;low←1;high←nwhile low≤high domid←|_(low+high)/2_|case:x<A(mid):high←mid-1:x>A(mid):low←mid+1:else:j ←mid; returnendcase repeat j ←0 end BINSRCH三、算法理解1、写出多段图最短路经动态规划算法求解下列实例的过程,并求出最优值。

西安电子科技大学《算法设计与分析》随课上机作业题

西安电子科技大学《算法设计与分析》随课上机作业题
课程目标与毕业要求如下: 3. 能够在安全、隐私、环境、法律等现实约束条件下,运用算法分析技术对设计方案的 可行性进行研究,能够设计或组合已有算法达到对系统设计方案进行优选和改进,体现创新 意识。能够基于算法理论和算法工程技术来选择研究路线,设计可行的实验方案。(支撑毕 业要求 3.3 和 4.2)。 4. 了解算法领域主要资料来源及获取方法,能够利用网络查询、检索本专业文献、资料 及相关软件工具。(支撑毕业要求 5.1)。
confidenceHigh()
= 0.5948351426485464
Example values after creating PercolationStats(2, 100000)
mean()
= 0.6669475
stddev()
= 0.11775205263262094
confidenceLow()
// does the system percolate?
public static void main(String[] args) // test client, optional
}
约定行 i 列 j 下标在 1 和 N 之间,其中(1, 1)为左上格点位置:如果 open(), isOpen(), or isFull()不在这个规定
-2-
问题。 在一个著名的科学问题中,研究人员对以下问题感兴趣:如果将格点以概率 p 独立地设置为 open 格点(因此以概率 1-p 被设置为 blocked 格点),系统渗透的概率是多少? 当 p = 0 时,系统不会渗出; 当 p=1 时,系统渗透。 下图显示了 20×20 随机网格(左)和 100×100 随机网格(右)的格点空置概率 p 与 渗滤概率。

《算法设计与分析》考试题目及答案(DOC)

《算法设计与分析》考试题目及答案(DOC)

Typew cleft = c - cw; // 剩余容量
Typep b = cp;
// 结点的上界
// 以物品单位重量价值递减序装入物品
while (i <= n && w[i] <= cleft) {
cleft -= w[i];
b += p[i];
i++;
} // 装满背包
if (i <= n) (b += p[i]/w[i] * cleft);
cg(n) }; B. O(g(n)) = { f(n) | 存在正常数 c 和 n0 使得对所有 n n0 有:0 cg(n)
f(n) };
C. (g(n)) = { f(n) | 对于任何正常数 c>0,存在正数和 n0 >0 使得对所有 n n0 有:0 f(n)<cg(n) };
f(n)个单位时间。用 T(n)表示该分治法解规模为|P|=n 的问题所需的计算时
间,则有:T (n)

kT (n
O(1) / m)
f
(n)
n 1 n 1
通过迭代法求得
T(n)的显式表达式为:T (n)

nlogm k

logm n1
C.最优子结构性质与重叠子问题性质 D. 预排序与递归调用
7. 回溯法在问题的解空间树中,按(D)策略,从根结点出发搜索解空间树。 A. 广度优先 B. 活结点优先 C.扩展结点优先 D. 深度优先
8. 分支限界法在问题的解空间树中,按(A)策略,从根结点出发搜索解空间 树。
A. 广度优先 B. 活结点优先 C.扩展结点优先 D. 深度优先

电子科技大学研究生算法设计与分析拟考题及答案评分细则(3)

电子科技大学研究生算法设计与分析拟考题及答案评分细则(3)

电子科技大学研究生算法设计与分析拟考题及答案评分细则(3)一、Please answer T or F for each of the following statements to indicate whether the statement is true or false1. The knapsack problem can be solved in polynomial time by using dynamic programming.( F )2. Some problems in NP can be solved in polynomial time.( T )3. To show a problem is NP-hard, we can reduce it to a well-known NP-Complete problem.( F )4. In an undirected graph, the value of the maximum flow between two vertices is equivalent to the value of the minimum cut between them. ( T )5. . ( F )二、Arrange the following functions in ascending asymptotic order of growth rate:,,,,.参考答案:f2,f3,f1,f4,f5三、Please answer the following questions:(a) What are the main steps of designing a dynamic programming algorithm?参考答案:1.定义子问题;2根据子问题建立递归关系式;3用自底而上的方式求解(建立储存表)。

(b) What are the main steps of proving the NP-Completeness of a problem?参考答案:1.证明该问题属于NP;2.选一个已知的NPC问题B;3.将问题B归约到该问题上。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、Please answer T or F for each of the following statements to indicate whether thestatement is true or false1. An algorithm is an instance, or concrete representation, for a computer programin some programming language. ( F )2. The following problem is a Decision Problem: What is the value of a bestpossible solution? ( F )3. The dynamic programming method can not solve a problem in polynomial time.( F)4. Assume that there is a polynomial reduction from problem A to problem B. Ifwe can prove that A is NP-hard, then we know that B is NP-hard. ( F )5. If one can give a polynomial-time algorithm for a problem in NP, then all theproblems NP can be solved in polynomial time. ( F )6. In an undirected graph, the minimum cut between any two vertices a and b isunique. ( F)7. Linear programming can be solved in polynomial time, but integer linearprogramming can not be solved in polynomial time. ( T )8. We can solve the maximum independent set problem in a graph with at most100 vertices in polynomial time. ( T ) 结论9. If an algorithm solves a problem of size n by dividing it into two subproblems ofsize n/2, recursively solving each subproblems, and then combine the solutions in linear time. Then the algorithm runs in O(n log n) time. ( T )10. Neural Computation, Fuzzy Computation and Evolution Computing are thethree research fields of Computational Intelligence. ( T )二、Given the following seven functions f1(n) = n5+ 10n4, f2(n) = n2+ 3n, f3(n) =f4(n) = log n + (2log n)3, f5(n) = 2n+n!+ 5e n, f6(n) = 3log(2n) + 5log n, f7(n) = 2n log n+log n n. Please answer the questions:第 1 页共5 页(a) Give the tight asymptotic growth rate (asymptotic expression with θ) to eachof them; (7分)(b) Arrange them in ascending order of asymptotic growth rate。

(3分) 参考答案和评分标准:a)(1) n5 + 10n4 = θ (n5) (1分,非最简表达式或写成O或Ω不符合题意,不给分)(2) n2 +3n = θ (3n) (1分,标准同上)(3) 210000= θ (n0.75) (1分,标准同上)(4) log n + (2log n)3 =θ ( (log n)3) (1分,标准同上)(5) 2n+n!+ 5e n =θ (n!) (1分,标准同上)(6) 3log2n + 5log n =θ (n) (1分,标准同上)(7) 2n log n+log n n. =θ (n n) (1分,标准同上)b)f4 f3 f6 f1 f2 f5 f7 (3分,每个错误位置扣0.5分,扣完为止)三、Please answer the following questions:(a)。

四、In the interval scheduling problem, we are given n jobs each of which has astarting time s and a finishing time f, and the goal is to find a maximum set of mutually compatible jobs (two jobs are compatible if they don’t overlap). Please answer the following questions:(a) Design a greedy algorithm for the interval scheduling problem and prove thecorrectness of it.(b) Assume that we are given 8 jobs with starting time and finishing time (s, t)being (0,2), (1,3), (8,9), (3,7), (7,8), (2,4),(6,9), (4,5). Use your algorithm to finda solution to this instance.参考答案及评分标准:a)将所有工作(jobs)按其完成时间的先后进行排序;第 2 页共5 页第 3 页 共 5 页在排好序的序列中用弹性法则,以此选取最小完成时间且和前面已选工作不冲突的工作。

证明用反证法,假设贪心算法不是最优导出矛盾,课件中有证明。

证明思路大体正确即可给全分。

b)答案是 (0,2),(2,4),(4,5),(7,8),(8,9).五、Find a minimum s-t cut in the following directed graph (the number beside theedge is the capacity of the edge). You are required to give the computation steps and show the cut and its size. (9分) v5v4v3v1v2T 1045556106333234参考答案: 18. Sv5v4v3v1v2(9,10)(4,4)(3,5)(5,5)(4,5)(6,6)(9,10)(6,6)(3,3)(0,3)(3,3)(0,2)(0,3)(2,4)分)给出第一个和增广路径(2分)后面任意两个增广路径(1分一个)最后答案18和这个cut (3分,任给一个cut即可,最后结果18错误则不给分)六、Prove that if we can check if a graph has a clique of size k in polynomial timethen we can also find a clique of size k in polynomial time (a clique of a graph isa complete subgraph ).参考答案及评分标准:设检查算法为B,我们构造一个找到解的算法A,该算法多项式次调用B。

(1分)算法A的步骤和思想:依次从图中删除一个点,再调用算法B来检查是否还存在大小为k的clique,如果存在则直接从图中删除这个点(2分);如果不存在,则将这个点放入解集,同时将图中所有不和这个点相邻的点全删除,再删除这个点本身,在剩余的图中再检查是否存在大小为k-1的clique。

(3分)以上思想正确给全分,其它正确解法也给全分。

七、We know that finding a longest path in a graph is NP-hard. Please show thatfinding a longest path that passing through a given vertex is also NP-hard. (6分) 参考答案及评分标准:将最长路径问题归约到通过某个点的最长路径问题。

思想如下:对于每个最长路径问题G,我们对图G中每个点得到一个通过这个点的最长路径问题,总共得到n(n为G中点的个数)个问题,如果后一个问题存在多项式算法,则前一个问题也存在。

以上思想正确给全分,否则最多给3分。

八、In a supermarket, there are n different types of goods for sale. Each type of goods第 4 页共5 页第 5 页 共 5 页 has a price of 0i w > dollars and a value of 0i v >. Now you are asked to buy some goods such that: for each type of goods, at most 2 pieces are bought, the total value of the goods is at least V and the total money used is minium. Use a dynamic programming algorithm to solve the above problem.(a) Please define your subproblem; (b) Give the recurrence relation based on your subproblems;(c) Solve the following instance showed in Table 1 by using the bottom-up method, where V=10. You are required to give the computation steps (the table used to store the solutions to the subporblems).Table 1参考答案及评分标准:(a )定义OPT (i ,v )为只能选择前i 种物品且价值达到v 的最小花销;(b ) 建立递归关系式:{}0if v 0(,)no solution if i 0 and v>0min (1,),(1,),2(1,2)otherwise i i i i OPT i v OPT i v w OPT i v v w OPT i v v ≤⎧⎪==⎨⎪-+--+--⎩其中第一条边界条件1分,第二条1分,第三条递归关系式3分。

相关文档
最新文档