2019-2020北邮计算机算法与数学模型(下)期末考试试题
2019-2020学年北京市海淀区北京邮电大学附属小学五年级(下)期末数学试卷
2019-2020学年北京市海淀区北京邮电大学附属小学五年级(下)期末数学试卷一、选择题。
1.(3分)下面四组数中,互为倒数的是()A.0.8 和B.5和0.2C.和D.1和2.(3分)四个同学分别用12个大小相同的小正方体搭物体。
这些物体的()一定相等。
A.高B.底面积C.表面积D.体积3.(3分)小兰读一本书,平均每天读这本书的,4天共读了这本书的()。
A.B.C.D.4.(3分)数学课上老师让同学们给如图再补画2个小正方形,使其折叠后能围成一个正方体下的四种法;不正确的()A.B.C.D.5.(3分)两条10米长的绳子,第一条用去米,第二条用去绳子的。
用去部分的长度相比,()A.第一条用去的长B.第二条用去的长C.两条用去的一样长D.无法确定6.(3分)一个长方体盛水容器,底面积是120cm2,水面高10cm。
把一个石块完全浸没在水中,这时水面高度上升了2cm。
这个石块的体积是()A.240cm3B.960cm3C.1200cm3D.1440cm37.(3分)观察图,下面叙述正确的是()A.兰兰家在芳芳家西偏南30°方向200米处B.兰兰家在芳芳家西偏北30°方向250米处C.乐乐家在芳芳家南偏西40°方向250米处D.乐乐家在芳芳家南偏东40°方向250米处8.(3分)下面算式的结果在~之间的是()A.÷2B.÷C.÷D.1÷9.(3分)把5个大小相同的正方体放在墙角处(如图),露在外面的面有()个。
A.7B.9C.11D.1510.(3分)将四块橡皮包成一包(如图),下面方法中()最节约包装纸。
A.B.C.D.二、填空题。
11.(3分)填上适当的单位。
一个饮料瓶的容积约是1.5 。
一个衣柜的体积约是2.8 。
12.(3分)<0.□(一位小数),□中最小可以填。
13.(3分)把一张纸的平均分成4份,每份是这张纸的几分之几?先画一画,涂一涂,再列式计算:。
北京邮电大学《数学模型与数学实验》期末考试试题
试题一:已知线性规划问题
s .t .
1)写出该线性规划的对偶问题;2)通过引入松弛变量,将该线性规划化为标准形 式;3)利用单纯形法对之求解,包括给出问题的对偶解。
试题二:就以下赋权(有向)图中采用适当算法计算顶点 v 1 到其余各个顶点的最短路(要旁边的数对 ( x , y ) 分别表示该弧的容量为 x 、一个可行流 f 在 1) 写出该网络关于流 f 的增量网络 N μ ; 2) 给出增量网络 N μ 的一条从源 v s 相应弧的流量 y 。 到汇的容量最大的路 P μ ;3)基于 P μ ,构造流 f 的修改流。
试题六:以下是一个数学建模步骤的示意图,它反映了机理分析方法建模的一般过程。请将图 中缺失的环节补充完整,并简述其具体意义。 模型准备 模型检验 模型分析 模型构成
↓
试题七:模型解释 1) 在允许缺货的存贮策略分析中,按“成本最小化”建模,从得到的结果中发现在一个存 贮周期中确有一段时期为“零贮存” ,且又不积极再进货。试分析该模型的缺陷以及改 进的方向。 2) 以 x(t ) 表示时刻 t 的人口,下面是阻滞增长(Logistic)模型:
北京邮电大学 2005——2006 学年第二学期
《数学模型与数学实验》期末考试试题(A)
姓名: 班级: 学号: 2006-6-14
max − x1 + x 2 + 2 x 3 x ⎧ 1 + x2 + x3 ≤ 8 ⎪− x + x − x ≤ 2 ⎪ 1 2 3 ⎨ − + ≤4 x 2 x 2 3 ⎪ ⎪ ≥0 ⎩ x1 , x 2 , x 3
Max λ1 d1 + λ 2 d1 + λ 3 d 2 + λ4 ( d 2 + d 3 ) + λ5 ( d 3 + d 4 ) + λ6 d 4 s.t . d1 + d 2 + d 3 + d 4 = 60 d1 , d 2 , d 4 , d 2 + d 3 , d 3 + d 4 ≥ 10
(完整word版)计算机算法设计与分析期末试题4套(含答案)
(1)用计算机求解问题的步骤:1、问题分析2、数学模型建立3、算法设计与选择4、算法指标5、算法分析6、算法实现7、程序调试8、结果整理文档编制(2)算法定义:算法是指在解决问题时,按照某种机械步骤一定可以得到问题结果的处理过程(3)算法的三要素1、操作2、控制结构3、数据结构算法具有以下5个属性:有穷性:一个算法必须总是在执行有穷步之后结束,且每一步都在有穷时间内完成。
确定性:算法中每一条指令必须有确切的含义。
不存在二义性。
只有一个入口和一个出口可行性:一个算法是可行的就是算法描述的操作是可以通过已经实现的基本运算执行有限次来实现的。
输入:一个算法有零个或多个输入,这些输入取自于某个特定对象的集合。
输出:一个算法有一个或多个输出,这些输出同输入有着某些特定关系的量。
算法设计的质量指标:正确性:算法应满足具体问题的需求;可读性:算法应该好读,以有利于读者对程序的理解;健壮性:算法应具有容错处理,当输入为非法数据时,算法应对其作出反应,而不是产生莫名其妙的输出结果。
效率与存储量需求:效率指的是算法执行的时间;存储量需求指算法执行过程中所需要的最大存储空间。
一般这两者与问题的规模有关。
经常采用的算法主要有迭代法、分而治之法、贪婪法、动态规划法、回溯法、分支限界法迭代法也称“辗转法”,是一种不断用变量的旧值递推出新值的解决问题的方法。
利用迭代算法解决问题,需要做好以下三个方面的工作:一、确定迭代模型。
在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。
所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。
迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、对迭代过程进行控制。
在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。
不能让迭代过程无休止地重复执行下去。
迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。
2022年北京邮电大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)
2022年北京邮电大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、无向图G=(V,E),其中:V={a,b,c,d,e,f},E={(a,b),(a, e),(a,c),(b,e),(c,f),(f,d),(e,d)},对该图进行深度优先遍历,得到的顶点序列正确的是()。
A.a,b,e,c,d,fB.a,c,f,e,b,dC.a,e,b,c,f, dD.a,e,d,f,c,b2、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储, a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()。
A.13B.33C.18D.403、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表4、最大容量为n的循环队列,队尾指针是rear,队头:front,则队空的条件是()。
A.(rear+1)MOD n=frontB.rear=frontC.rear+1=frontD.(rear-1)MOD n=front5、下列关于AOE网的叙述中,不正确的是()。
A.关键活动不按期完成就会影响整个工程的完成时间B.任何一个关键活动提前完成,那么整个工程将会提前完成C.所有的关键活动提前完成,那么整个工程将会提前完成D.某些关键活动若提前完成,那么整个工程将会提前完成6、下列关于无向连通图特性的叙述中,正确的是()。
Ⅰ.所有的顶点的度之和为偶数Ⅱ.边数大于顶点个数减1 Ⅲ.至少有一个顶点的度为1A.只有Ⅰ B.只有Ⅱ C.Ⅰ和Ⅱ D.Ⅰ和Ⅲ7、若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b, c,d,e,a,则根结点的孩子结点()。
A.只有e B.有e、b C.有e、c D.无法确定8、一棵哈夫曼树共有215个结点,对其进行哈夫曼编码,共能得到()个不同的码字。
算法基础期末考试题及答案
算法基础期末考试题及答案一、选择题(每题2分,共20分)1. 算法的时间复杂度是指:A. 算法执行时间B. 算法执行的指令条数C. 算法执行所需的内存大小D. 算法执行时所需的数据量答案:B2. 在排序算法中,冒泡排序的平均时间复杂度是:A. O(n)B. O(n log n)C. O(n^2)D. O(1)答案:C3. 递归算法的基本原理是:A. 循环B. 迭代C. 分治D. 重复答案:C4. 哈希表的冲突解决方法不包括:A. 链地址法B. 开放寻址法C. 再散列法D. 排序答案:D5. 动态规划与分治算法的区别在于:A. 递归B. 贪心选择C. 重叠子问题D. 优化子结构答案:C6. 二叉树的深度优先搜索遍历方法包括:A. 前序遍历B. 中序遍历C. 后序遍历D. 所有选项答案:D7. 快速排序算法的最好时间复杂度是:A. O(n)B. O(n log n)C. O(n^2)D. O(log n)答案:B8. 图的广度优先搜索(BFS)使用的是:A. 栈B. 队列C. 链表D. 堆答案:B9. Dijkstra算法是用于解决:A. 最小生成树问题B. 最短路径问题C. 图的连通性问题D. 图的遍历问题答案:B10. 拓扑排序是针对哪种类型的图:A. 有向无环图B. 无向图C. 有向图D. 完全图答案:A二、简答题(每题5分,共30分)1. 请简述什么是贪心算法,并给出一个应用实例。
答案:贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法策略。
例如,在硬币找零问题中,总是优先使用最大面额的硬币进行找零。
2. 解释什么是二分查找算法,并说明其时间复杂度。
答案:二分查找算法是一种在有序数组中查找特定元素的搜索算法。
其基本思想是将数组分成两半,比较中间元素与目标值,如果目标值等于中间元素,则查找成功;如果目标值小于中间元素,则在左侧子数组中继续查找;如果目标值大于中间元素,则在右侧子数组中继续查找。
算法期末考试题及答案
算法期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个算法不是排序算法?A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C2. 在二叉树的遍历算法中,中序遍历的顺序是:A. 先序B. 后序C. 中序D. 层序答案:C3. 动态规划与分治法算法的主要区别在于:A. 问题分解的方式B. 问题解决的顺序C. 存储中间结果的方式D. 问题规模的大小答案:C4. 哈希表的冲突解决方法不包括:A. 开放寻址法B. 链地址法C. 线性探测法D. 排序答案:D5. 以下哪个是图的遍历算法?A. 归并排序B. 深度优先搜索C. 快速排序D. 堆排序答案:B6. 贪心算法的特点是:A. 每一步都选择最优解B. 每一步都选择局部最优解C. 每一步都选择最差解D. 每一步都随机选择解答案:B7. 在算法分析中,时间复杂度O(1)表示:A. 常数时间B. 线性时间C. 对数时间D. 多项式时间答案:A8. 以下哪个是排序算法的时间复杂度为O(n^2)?A. 快速排序B. 归并排序C. 冒泡排序D. 堆排序答案:C9. 递归算法的基本原理是:A. 重复执行B. 分而治之C. 循环调用D. 迭代求解答案:B10. 以下哪个是算法的时间复杂度为O(log n)的典型例子?A. 二分查找B. 线性查找C. 冒泡排序D. 快速排序答案:A二、简答题(每题10分,共20分)1. 简述快速排序算法的基本思想及其时间复杂度。
答案:快速排序是一种分治法的排序算法。
其基本思想是选择一个元素作为“基准”(pivot),然后将数组分为两部分,一部分包含所有小于基准的元素,另一部分包含所有大于基准的元素。
这个过程称为分区(partitioning)。
之后,递归地对这两部分进行快速排序。
快速排序的平均时间复杂度为O(n log n),但在最坏情况下(例如数组已经排序或所有元素相等)时间复杂度为O(n^2)。
2. 解释什么是动态规划,并给出一个动态规划问题的例子。
算法期末复习题2
填空题:1.一个算法就是一个有穷规则的集合,其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特性:确定性有穷性可行性 0个或多个输入一个或多个输出2.算法的复杂性有时间复杂性和空间复杂性之分,衡量一个算法好坏的标准是时间复杂度高低。
3.某一问题可用动态规划算法求解的显著特征是该问题具有最优子结构性质。
5.用回溯法解问题时,应明确定义问题的解空间,问题的解空间至少应包含一个(最优)解6.动态规划算法的基本思想是将待求解问题分解成若干子问题_,先求解子问题,然后从这些子问题的解得到原问题的解。
7.以深度优先方式系统搜索问题解的算法称为回溯法。
8.0-1背包问题的回溯算法所需的计算时间为o(n*2n),用动态规划算法所需的计算时间为o(min{nc,2n})。
9.动态规划算法的两个基本要素是最优子结构和重叠子问题。
10.二分搜索算法是利用动态规划法实现的算法。
11.一个算法复杂性的高低体现在计算机运行该算法所需的时间和存储器资源上,因此算法的复杂性有时间复杂性和空间复杂性之分。
12.出自于“平衡子问题”的思想,通常分治法在分割原问题,形成若干子问题时,这些子问题的规模都大致相同。
13.动态规划算法有一个变形方法备忘录方法。
这种方法不同于动态规划算法“自底向上”的填充方向,而是“自顶向下”的递归方向,为每个解过的子问题建立了备忘录以备需要时查看,同样也可避免相同子问题的重复求解。
14、这种不断回头寻找目标的方法称为回溯法。
15、直接或间接地调用自身的算法称为递归算法。
16、 记号在算法复杂性的表示法中表示渐进确界或紧致界。
17、由分治法产生的子问题往往是原问题的较小模式,这就为使用递归技术提供了方便。
18、建立计算模型的目的是为了使问题的计算复杂性分析有一个共同的客观尺度。
19、下列各步骤的先后顺序是②③④①。
①调试程序②分析问题③设计算法④编写程序。
20、最优子结构性质的含义是问题的最优解包含其子问题的最优解。
北邮计算机统考试题及答案
北邮计算机统考试题及答案1. 数据结构与算法1.1 简述栈和队列的定义及其主要特点。
栈是一种数据结构,遵循后进先出(LIFO)的原则。
其主要特点是只能在栈顶进行插入和删除操作。
栈的插入操作称为入栈(push),删除操作称为出栈(pop)。
例如,在程序执行中,函数调用和递归调用的栈帧可以通过栈的方式实现。
队列也是一种数据结构,遵循先进先出(FIFO)的原则。
它的主要特点是只能在队尾进行插入操作,在队头进行删除操作。
队列的插入操作称为入队(enqueue),删除操作称为出队(dequeue)。
例如,在操作系统的进程调度中,可以使用队列来实现进程的排队执行。
1.2 常见的排序算法有哪些?简单描述它们的实现原理。
常见的排序算法有冒泡排序、选择排序、插入排序、快速排序和归并排序。
冒泡排序是通过相邻元素的比较和交换来实现的,每次循环找出当前未排序部分的最大值,并将其放置在已排序部分的末尾。
选择排序通过在未排序部分选择最小(或最大)的元素,将其与未排序部分的第一个元素交换位置,实现逐渐将未排序部分的最小(或最大)元素放置到已排序部分的末尾。
插入排序通过将未排序部分的元素逐个插入到已排序部分的适当位置来实现排序。
可以将未排序部分的元素与已排序部分的元素逐个比较并移动,直到找到合适的位置。
快速排序通过选择一个基准元素,将数组分成两个子数组,其中一个子数组的所有元素都小于基准元素,另一个子数组的所有元素都大于基准元素。
然后递归地对两个子数组进行快速排序。
归并排序是将两个有序子数组合并成一个有序数组的过程。
通过不断地将数组进行二分,直到只剩下一个元素。
然后将两个只有一个元素的子数组进行合并,直到最终完成整个数组的排序。
1.3 列举几种常用的查找算法,并简述它们的实现原理。
常用的查找算法有线性查找、二分查找、哈希查找和二叉查找树。
线性查找是从列表的开头开始,逐个比较每个元素,直到找到目标元素或遍历完整个列表。
二分查找是在有序数组中通过比较目标值和数组中间元素的大小来实现的。
算法考试试题及答案
精品文档一、填空题(本题10 分,每空 1 分)1、算法的复杂性是的度量,是评价算法优劣的重要依据。
2、设 n 为正整数,利用大“O(·)”记号,将下列程序段的执行时间表示为n 的函数,则下面程序段的时间复杂度为。
i=1; k=0;while(i<n) { k=k+10*i;i++; }3、计算机的资源最重要的是和资源。
因而,算法的复杂性有和之分。
n24、 f(n)= 6 ×2+n,f(n) 的渐进性态 f(n)= O()5、递归是指函数或者通过一些语句调用自身。
6、分治法的基本思想是将一个规模为n 的问题分解为k 个规模较小的子问题,这些子问题互相且与原问题相同。
二、选择题(本题20 分,每小题2 分)1、分支限界法与回溯法都是在问题的解空间树T 上搜索问题的解 , 二者 () 。
A. 求解目标不同 , 搜索方式相同B.求解目标不同 , 搜索方式也不同C. 求解目标相同 , 搜索方式不同D.求解目标相同 , 搜索方式也相同2、回溯法在解空间树T 上的搜索方式是 ( )。
A. 深度优先B.广度优先C.最小耗费优先D.活结点优先3、在对问题的解空间树进行搜索的方法中, 一个活结点最多有一次机会成为活结点的是( ) 。
A. 回溯法B.分支限界法C.回溯法和分支限界法D. 回溯法求解子集树问题4、以下关于判定问题难易处理的叙述中正确的是( ) 。
A.可以由多项式时间算法求解的问题是难处理的B.需要超过多项式时间算法求解的问题是易处理的C.可以由多项式时间算法求解的问题是易处理的D.需要超过多项式时间算法求解的问题是不能处理的5、设 f(N),g(N) 是定义在正数集上的正函数, 如果存在正的常数 C 和自然数 N0,使得当 N≥N0时有 f(N) ≤Cg(N), 则称函数 f(N)当 N 充分大时有上界g(N), 记作 f(N)=O(g(N)),即 f(N) 的阶( )g(N) 的阶。
算法题__计算机算法设计及分析期末试题4套(含答案)
(1)用计算机求解问题的步骤:1、问题分析2、数学模型建立3、算法设计与选择4、算法指标5、算法分析6、算法实现7、程序调试8、结果整理文档编制(2)算法定义:算法是指在解决问题时,按照某种机械步骤一定可以得到问题结果的处理过程(3)算法的三要素1、操作2、控制结构3、数据结构算法具有以下5个属性:有穷性:一个算法必须总是在执行有穷步之后结束,且每一步都在有穷时间内完成。
确定性:算法中每一条指令必须有确切的含义。
不存在二义性。
只有一个入口和一个出口可行性:一个算法是可行的就是算法描述的操作是可以通过已经实现的基本运算执行有限次来实现的。
输入:一个算法有零个或多个输入,这些输入取自于某个特定对象的集合。
输出:一个算法有一个或多个输出,这些输出同输入有着某些特定关系的量。
算法设计的质量指标:正确性:算法应满足具体问题的需求;可读性:算法应该好读,以有利于读者对程序的理解;健壮性:算法应具有容错处理,当输入为非法数据时,算法应对其作出反应,而不是产生莫名其妙的输出结果。
效率与存储量需求:效率指的是算法执行的时间;存储量需求指算法执行过程中所需要的最大存储空间。
一般这两者与问题的规模有关。
经常采用的算法主要有迭代法、分而治之法、贪婪法、动态规划法、回溯法、分支限界法迭代法也称“辗转法”,是一种不断用变量的旧值递推出新值的解决问题的方法。
利用迭代算法解决问题,需要做好以下三个方面的工作:一、确定迭代模型。
在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。
所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。
迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、对迭代过程进行控制。
在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。
不能让迭代过程无休止地重复执行下去。
迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。
算法大题期末考试题及答案
算法大题期末考试题及答案一、简答题(每题5分,共20分)1. 简述什么是递归算法,并给出一个递归算法的实例。
答案:递归算法是一种在算法中使用函数调用自身的方法来解决问题的算法。
例如,计算阶乘的递归算法定义为:n! = n * (n-1)!,其中n是一个正整数,递归的基本情况是1! = 1。
2. 描述二分查找算法的基本思想,并说明其时间复杂度。
答案:二分查找算法是一种在有序数组中查找特定元素的算法。
其基本思想是将数组分为两半,比较中间元素与目标值,如果目标值等于中间元素,则查找成功;如果目标值小于中间元素,则在左半部分继续查找;如果目标值大于中间元素,则在右半部分继续查找。
这个过程重复进行,直到找到目标值或查找范围为空。
二分查找的时间复杂度为O(log n)。
3. 什么是动态规划?动态规划与贪心算法的区别是什么?答案:动态规划是一种通过将复杂问题分解为更小的子问题来解决的方法,并且通过存储这些子问题的解来避免重复计算。
动态规划与贪心算法的区别在于,贪心算法在每一步选择局部最优解,而动态规划则考虑所有可能的子问题解,并选择全局最优解。
4. 解释什么是哈希表,并简述其工作原理。
答案:哈希表是一种数据结构,它提供了快速的数据插入和查找功能。
哈希表通过哈希函数将键映射到表中的一个位置来访问记录,这个通过键到位置的映射过程称为哈希。
如果两个键具有相同的哈希值,这种情况称为冲突,通常通过链地址法或开放地址法来解决。
二、计算题(每题10分,共20分)1. 给定一个数组A=[3, 5, 7, 9, 11],请使用二分查找算法找出11的位置。
答案:首先,确定数组的中间位置,即(0+4)/2=2,比较A[2]与11,发现A[2]=7小于11,因此11在A[2]的右侧。
更新查找范围为A[3]到A[4],即索引3和4。
继续比较A[3]与11,发现A[3]=9小于11,因此11在A[3]的右侧。
最后,比较A[4]与11,发现A[4]=11等于目标值,所以11的位置是4。
北京邮电大学数据结构期末考试试题(A卷)
北京邮电大学数据结构期末考试试题(A卷)一.单项选择题(2分/题)1.一个栈的输入序列为12345,则下列序列中是栈的输出序列的是(A)。
A.23415B.54132C.31245D.142532.设循环队列中数组的下标范围是1~n,其头尾指针分别为f和r,则其元素个数为(D)。
A.r-fB.r-f+1C.(r-f) mod n +1D.(r-f+n) mod n 3.二叉树在线索化后,仍不能有效求解的问题是(D)。
A.先序线索二叉树中求先序后继B. 中序线索二叉树中求中序后继C.中序线索二叉树中求中序前驱D. 后序线索二叉树中求后序后继4.求最短路径的FLOYD算法的时间复杂度为(D)。
A.O(n)B.O(n+e)C.O(n2)D.O(n3)5.一棵左右子树不空的二叉树在先序线索化后,其空指针域数为(B)。
A.0B.1C.2D.不确定6.数组A[1..5,1..6]的每个元素占5个单元,将其按行优先顺序存储在起始地址为1000的连续的内存单元中,则元素A[5,5]的地址为(A)。
A.1140B.1145C.1120D.11257.在下列排序算法中,在待排序的数据表已经为有序时,花费时间反而最多的是(A)。
A.快速排序B.希尔排序C.冒泡排序D.堆排序8.对有18个元素的有序表做折半查找,则查找A[3]的比较序列的下标依次为(C)。
A.1-2-3B.9-5-2-3C.9-5-3D. 9-4-2-39.下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是(D)。
A.堆排序B.冒泡排序C.快速排序D.直接插入排序10.在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡点为A,并已知A的左孩子的平衡因子为-1,右孩子的平衡因子为0,则做(B)型调整以使其平衡。
A.LLB.LRC.RLD.RR二.判断题(1分/题)1.线性表的长度是线性表所占用的存储空间的大小。
F2.双循环链表中,任意一结点的后继指针均指向其逻辑后继。
计算机导论-第四章-算法与数据结构期末测试习题与答案
1、算法的时间复杂度是指()。
A.算法执行过程中所需要的基本运算次数B.执行算法程序所需要的时间C.算法程序的长度D.算法程序中的指令条数正确答案:A2、算法的空间复杂度是指()。
)A.算法程序的长度B.算法程序所占的存储空间C.算法执行过程中所需要的存储空间D.算法程序中的指令条数正确答案:C3、线性表采用链式存储的优点是()。
A.花费的存储空间较顺序储存少B.数据元素的物理顺序与逻辑顺序相同~C.便于随机存取D.便于插入和删除操作正确答案:D4、下列叙述中正确的是()。
A.二叉树是线性结构B.线性链表是非线性结构C.线性表是线性结构D.栈与队列是非线性结构$正确答案:C5、数据结构中,与所使用的计算机无关的是数据的()。
B.物理结构C.物理和存储结构D.存储结构正确答案:A6、存储结构是指()。
,A.逻辑结构在计算机中的表示B.数据所占的存储空间量C.存储在外存中的数据D.数据在计算机中的顺序存储方式正确答案:A7、下列关于队列的叙述中,正确的是()。
A.队列是先进后出B.队列是先进先出;C.在队列中只能插入数据D.在队列中只能删除数据正确答案:B8、下列关于栈的叙述中,正确的是()。
A.栈只能采用顺序存储B.栈可以采用链式存储,采用链式存储时不会产生栈溢出现象。
C.在栈中只能删除数据D.在栈中只能插入数据;正确答案:B9、对长度为n的线性表进行顺序查找,查找成功时,最坏情况下所需要的比较次数为()。
2+l正确答案:D10、下列叙述中,正确的是()。
^A.以上三种说法都不对B.算法就是程序C.设计算法时只需要考虑结果的可靠性D.设计算法时只需要考虑数据结构的设计正确答案:A二、多选题1、如果进栈的顺序为e1,e2,e3,e4,则可能的出栈序列是()。
,e1,e4,e2),e3,e2,e1,e2,e3,e4,e4,e3,e1正确答案:B、C、D2、已知二叉树后序编历序列是dabec,中续遍历序列是debac,不是其前序编历序列是()。
算法期末考试试卷
算法期末考试试卷一、选择题(每题2分,共20分)1. 在图论中,下列哪项不是图的基本术语?- A. 顶点- B. 边- C. 环- D. 矩阵2. 快速排序算法的平均时间复杂度是:- A. O(n)- B. O(n log n)- C. O(n^2)- D. O(log n)3. 哈希表解决冲突最常用的方法是:- A. 链地址法- B. 开放地址法- C. 再哈希法- D. 二次探测法4. 以下哪个是动态规划算法的典型问题?- A. 二分搜索- B. 快速排序- C. 背包问题- D. 归并排序5. 在算法分析中,最坏情况下的时间复杂度是指:- A. 平均时间复杂度- B. 最优时间复杂度- C. 所有可能输入的时间复杂度中的最大值 - D. 随机时间复杂度6. 递归算法的基本思想是:- A. 将问题分解为更小的子问题- B. 将问题转化为更简单的问题- C. 将问题转化为更复杂的问题- D. 将问题转化为多个问题7. 以下哪个是贪心算法不能解决的问题?- A. 单源最短路径问题- B. 活动选择问题- C. 背包问题- D. 旅行商问题8. 以下哪个排序算法是稳定的?- A. 快速排序- B. 堆排序- C. 归并排序- D. 冒泡排序9. 以下哪个是图的遍历算法?- A. 深度优先搜索(DFS)- B. 广度优先搜索(BFS)- C. 回溯算法- D. 动态规划10. 以下哪个是并查集算法的应用场景?- A. 最小生成树- B. 图的连通性- C. 单源最短路径- D. 动态规划二、简答题(每题10分,共30分)1. 简述二叉树的前序遍历、中序遍历和后序遍历的区别。
2. 描述动态规划和贪心算法的区别,并给出一个例子。
3. 解释什么是时间复杂度,并说明为什么在算法设计中考虑时间复杂度很重要。
三、编程题(每题25分,共50分)1. 编写一个函数,实现快速排序算法,并用一个数组测试你的函数。
2. 编写一个函数,实现Dijkstra算法,用于计算图中单源最短路径,并用一个图的示例来测试你的函数。
算法期末考试试题及答案
算法期末考试试题及答案一、选择题(每题2分,共20分)1. 在排序算法中,时间复杂度为O(n^2)的算法是:A. 快速排序B. 归并排序C. 冒泡排序D. 堆排序2. 哈希表的冲突解决方法不包括:A. 开放寻址法B. 链接法C. 链表法D. 排序法3. 以下哪个不是二叉树的性质:A. 每个节点最多有两个子节点B. 没有兄弟节点C. 左子树的所有节点的值小于根节点的值D. 右子树的所有节点的值大于根节点的值4. 在图的遍历算法中,深度优先搜索(DFS)使用的是:A. 栈B. 队列C. 链表D. 哈希表5. 动态规划与分治法的区别在于:A. 动态规划使用贪心选择,分治法不使用B. 分治法使用贪心选择,动态规划不使用C. 动态规划使用递归,分治法不使用D. 动态规划使用迭代,分治法使用递归...二、简答题(每题10分,共30分)1. 简述快速排序算法的基本思想。
2. 解释什么是贪心算法,并给出一个实际应用的例子。
3. 描述图的广度优先搜索(BFS)算法的步骤。
三、计算题(每题15分,共30分)1. 给定一个数组A=[3, 1, 4, 1, 5, 9, 2, 6, 5, 3],请使用归并排序算法对其进行排序,并给出排序过程中的每一步。
2. 假设有一个无向图,顶点集为V={A, B, C, D},边集为E={(A, B), (B, C), (C, D), (D, A)},请使用Kruskal算法找到该图的最小生成树。
四、编程题(每题20分,共20分)1. 编写一个函数,实现单源最短路径的Dijkstra算法。
函数输入为图的邻接矩阵和起始顶点,输出为从起始顶点到所有其他顶点的最短路径长度。
答案一、选择题1. C2. D3. B4. A5. D二、简答题1. 快速排序算法的基本思想是通过一个划分操作,将数组分为两部分,一部分比另一部分的所有元素都要小,然后再递归地对这两部分进行快速排序,最后将两部分合并。
2. 贪心算法是一种在每一步选择中都采取在当前状态下最好或最优的选择,从而希望导致结果是全局最好或最优的算法。
计算机算法测试题及答案
计算机算法测试题及答案一、选择题(每题2分,共20分)1. 以下哪种排序算法的时间复杂度是O(nlogn)?A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C2. 在计算机科学中,递归算法的基本思想是什么?A. 重复执行相同的操作B. 将问题分解为更小的子问题C. 循环调用自身D. 随机选择算法答案:B3. 以下哪个数据结构不是线性数据结构?A. 数组B. 链表C. 树D. 图答案:D4. 在数据库管理系统中,用于表示数据表之间关系的是:A. 索引B. 视图C. 键D. 触发器答案:C5. 以下哪种算法是解决图的最短路径问题的?A. 深度优先搜索B. 广度优先搜索C. 迪杰斯特拉算法D. 快速排序答案:C二、填空题(每题3分,共30分)1. 在计算机算法中,______算法是一种通过不断交换相邻元素来达到排序目的的算法。
答案:冒泡排序2. 一个算法的时间复杂度为O(n^2),这意味着算法的执行时间随着输入规模的增加而______。
答案:平方增长3. 在面向对象编程中,______是对象之间共享的属性和方法的集合。
答案:类4. 在关系型数据库中,______用于唯一标识表中的每一条记录。
答案:主键5. 在图的遍历算法中,______算法可以用于找到从起始顶点到图中所有其他顶点的最短路径。
答案:迪杰斯特拉三、简答题(每题10分,共50分)1. 请简述什么是贪心算法,并给出一个贪心算法的应用实例。
答案:贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。
贪心算法在每一步选择时都采取在当前状态下最好或最优的选择,而不考虑子问题的解,不能保证会得到最优解。
一个典型的贪心算法应用实例是霍夫曼编码,它通过选择最短的编码来压缩数据,从而实现数据的有效压缩。
2. 描述一下什么是动态规划算法,并给出一个动态规划算法的实例。
答案:动态规划是一种通过将复杂问题分解为更简单的子问题来解决的方法,它通过存储这些子问题的解来避免重复计算,从而提高算法的效率。
北邮数据结构期末试题与答案
试卷四一. 填空题(22 分,每空 1 分)1.设待处理的问题规模为n,若一个算法的时间复杂度为一个常数,则表示为(),若一个算法的执行次数为n*log25n,则时间复杂度表示为()。
2.数据的逻辑结构主要分为()、()、()和()四种。
3.一棵度为3 的树,若度为1 的结点有5 个,度为2 的结点有8 个,度为3 的结点有12 个,则该树有()叶子结点。
4.设一个空栈,栈顶指针为1000H,若有输入序列为1、2、3、4、5,经过push、push、pop、push、pop、push、push 后,输出序列是(),若输入的每个数占4 个字节的空间,则栈顶指针为()H。
5.按照()遍历二叉排序树得到的序列是一个有序序列。
6.若哈夫曼树一共有n 个叶子结点,则该哈夫曼树总结点数为()。
7.设C++中存储三维数组A mnp,则第一个元素为a000,若按行优先存储,则a ijk 前面共有()个元素;若按列优先存储,则a ijk 前面共有()个元素。
8.设8 行8 列的二维数组起始元素为A[0][0],按行优先存储到起始元素下标为0 的一维数组B 中,则元素A[5][3]在B 数组中的位置为B[()]。
9.图的深度优先遍历类似于树的()遍历,它所用的数据结构是(),图的广度优先遍历类似于树的()遍历,使用的数据结构是()。
10.设无向图G 中顶点数为n,则图G 至少有()边,至多有()边;若G 为有向图,则至少有()弧,至多有()弧。
二. 单选题(23 分,每空 1 分)1.顺序表是一种采用()存取方式的()存储结构,链表是一种采用()存取方式的()存储结构。
A.顺序B. 随机C.链式D. 有序2.STL 中最常用的用于处理顺序表问题的容器是(),STL 中用于处理链表问题的容器是()。
A. vectorB. mapC. listD.stack3.长度为20 的有序序列,采用折半查找,共有()个元素的查找长度为3。
北京邮电大学2019年计算机学科基础综合考试真题803
北京邮电大学2019年计算机学科基础综合考试真题803北京邮电大学2019年硕士研究生招生考试试题考试科目:计算机学科基础综合请考生注意:①所有答案(包括选择题和填空题)一律写在答题纸上,否则不计成绩。
②不允许使用计算器一、单项选择题(每小题2分,共80分)1.下面算法的时间复杂度是int A(int n){if(n<=1)return 1;retun n+A(n/2);}A.O(n)B.O(n2)C.Olog2n)D.O(n log2n)2.将两个各有n个元素的递增有序的顺序表归并成一个有序表,最少的比较次数是A.n-lB.nC.2n-1D.2n3.设n个元素1,2.…,n(n>l00),按从小到大顺序进栈,出栈序列为p1,p2.……p n,若p1=10,则p2的值不可能出现的元素个数为A.n-9B.n-10C.9D.84.在循环队列Q[0…m-1]中,front指向队首元素,rear 指向队尾元素的下一个空单元,则此时该队列中空单元的个数为A.((m+front-rear)%mB.(m-front+rear)%mC.(m-front-rear)%mD.(m+front+rear)%m5.具有529个结点的完全二叉树,其叶子结点的个数是A.256B.261C.263D.2656.若二维数组A[0..7][0..4]的首地址为10000,以行优先顺序存储在计算机中,每个元素占5个存储单元,则元素A[4][3]的存储地址为A.10090B.10115C.10140D.101607.有n个顶点的图采用邻接表存储,有m个边结点,m为奇数,若该图任意两个顶点对之间均有路径可达,则m的值最少是A.n(n-1/2B.n(n-l)C.nD.n-l8.一棵深度为m的平衡二叉树,其每个结点的平衡因子均为0,则该树的结点数是A.2mB.2m-1C.2m-1D.无法确定的9.排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。
大学算法期末考试题及答案
大学算法期末考试题及答案一、单项选择题(每题2分,共20分)1. 算法复杂度中的T(n)表示什么?A. 时间复杂度B. 空间复杂度C. 迭代次数D. 执行路径长度答案:A2. 在排序算法中,快速排序的平均时间复杂度是:A. O(n^2)B. O(nlogn)C. O(n)D. O(logn)答案:B3. 下列哪个算法不是动态规划算法?A. 斐波那契数列B. 背包问题C. 最长公共子序列D. 二分查找答案:D4. 哈希表的冲突解决策略中,开放寻址法和链地址法的主要区别是什么?A. 开放寻址法使用数组,链地址法使用链表B. 开放寻址法使用链表,链地址法使用数组C. 开放寻址法只能处理少量冲突,链地址法可以处理大量冲突D. 以上都不是答案:C5. 在图的遍历算法中,深度优先搜索(DFS)使用的是:A. 队列B. 栈C. 链表D. 数组答案:B6. 堆排序算法中,将一个堆结构调整为最大堆或最小堆的过程称为:A. 堆调整B. 堆构建C. 堆分解D. 堆合并答案:A7. 以下哪个排序算法是稳定的?A. 快速排序B. 归并排序C. 堆排序D. 选择排序答案:B8. 算法的五个基本特性包括有穷性、确定性、可行性、输入和输出,其中输入可以是:A. 数据B. 初始条件C. 指令D. 任意值答案:B9. 递归算法的效率往往比非递归算法低,这是因为:A. 递归需要额外的内存空间B. 递归需要更多的计算步骤C. 递归会导致栈溢出D. 递归需要重复计算相同的问题答案:D10. 在下列排序算法中,最不适合于排序大量数据的是:A. 插入排序B. 选择排序C. 归并排序D. 快速排序答案:A二、填空题(每题2分,共20分)11. 算法的时间复杂度为O(1),表示该算法的执行时间与输入数据的规模______。
答案:无关12. 在二叉树的遍历中,先序遍历的顺序是先访问根节点,然后按照______的顺序访问所有子树。
答案:先左后右13. 动态规划算法通常用于解决具有______性质的问题。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学2019—2020学年第二学期
《计算机算法与数学模型(下)》期末考试试题
班级:学号(学校统一10位):姓名:
说明:1)本次考试采用开卷方式,答卷时间为2周(2020年06月04日-06月14日),请按时(2020年06月14日之前,逾时将作无效化处理)交卷;2)本课程的考试是一学期课程学习结束的一次综合复习,因此在答题时务必独立完成,除了查阅有关资料外,请避免同学间相互抄袭,如发现雷同答卷,一并作废!3)答卷统一要求以电子文档报告形式完成,建议采用word或wps等较为常用的编辑软件处理(当然,由于实验条件的局限,也可以手写拍照)。
文档版式统一要求A4纸型,正文小4号字体、单倍行距。
请在答卷卷首写清姓名、班级、学号(学校统一10位编号;特别,若采用推荐字处理工具,可以选择基于本试题文档跟题作答)等。
4)凡涉及计算编程的题目,将程序打包、压缩、以“数学模型”+“本人学号”+“姓名”命名,如“数学模型2015212999丁一”,然后发到ftp://10.105.221.24 (用户名:homework,密码:homework) 5) 若由于印刷原因造成试题不清晰,请从http://10.105.221.24/sxjm下载试题的电子文档。
一.模型解释:
1.设G(V,E)为一n-阶(n≥2任意自然数)竞赛图,V={v j|j=1..n}为顶点集,E为边集,构造
⃗⃗⃗⃗⃗⃗⃗⃗ |i=1..n}∪{v i v n+1
⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗ |i= (n+2) -阶竞赛图G̃(Ṽ,Ẽ),其中Ṽ=V∪{v0,v n+1},Ẽ=E∪{v0v i
⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗ }(竞赛图及完全路径的概念请你查阅有关资料). 试着说明:1)若以Ã表示
1..n}∪{v n+1v0
G̃(Ṽ,Ẽ)的邻接矩阵,试着说明Ã的模最大的特征值λ∗为一正单根,且其关于特征值λ∗特征向量的所有分量具有相同的正负号;2)这里不妨以d∗表示Ã关于特征值λ∗的符合归一化条件的特征向量,试着说明以d∗作为V(Ṽ)的实力进行竞赛图排名的合理性及其优点。
2.一个合理的红绿灯调节方案应当使为每一车流分配的有效通行时间与它的实际流量相适应,简
言之,那些相对繁忙的车流应当有更为充足的通行时间,我们考虑一个具有六车流十字路口的红绿灯调节问题,
不妨设λi(i=1..6)表示六个车流在单位时间内的车流量,则得如下的线性规划模型:
Maxλ1d1+λ2d1+λ3d2+λ4(d2+d3)+λ5(d3+d4)+λ6d4
s.t.d1+d2+d3+d4=60
d1,d2,d2+d3,d3+d4,d4≥10,d3≥0
其中d i(i=1..4)为决策变量,d1,d1,d2,d2+d3,d3+d4,d4表示a..f六个车流在一个红绿灯调节周期(60秒)内的各车流的有效通行时间。
试着分析该(类)模型的主要缺陷,你能给出某种改进的建模方案吗?
3.请阅读“车灯线光源的优化设计”(CUMCM2002 A 题),我们在做适当假设(可以在网上查阅
有关课件)后建立了如下模型:Max
min{ℎB (l )2,ℎC (l )}s.t.{ ℎB (l )=1l ∙∫ℎ̃B (x )∙dx l/2−l/2ℎC (l
)=1l ∙∫ℎ̃C (x )∙dx
l/2−l/2l ∈(0,2p)
请你解释该优化模型目标函数的构造原理及其合理性;
我们还可以将模型中有关约束条件改写为:
{ ℎB (l )=1l ∙∫ℎ̃B (x )∙dx l/2−l/2
=1l ∙∫[ℎ̃B (x )+ℎ̃−B (x )]∙dx l/20ℎC (l )=1l ∙∫[ℎ̃C (x )+ℎ̃−C (x )]∙dx l/20
请你解释其理由,以及这样做从计算机仿真计算的角度有何意义。
题目考虑线光源车灯的优化设计,l 为灯丝长度,车灯的反射镜面为一旋转抛物镜面,在反射镜面正前方一定距离处垂直中心轴线放置一个平面测试屏,B 、C 为测试屏上标定的两点,而−B 、−C 则表示测试屏上B 、C 两点关于反射镜中心轴线对称点。
其它变量符号对应的含义请基于课件做出适宜的解读。
二. 计算题
1. 基于如下赋边权的网络图,选择适当的算法,给出顶点A 到顶点E 的最短路。
2. 选用适当数学软件求解
max
16.87x 1+11.6x 2+6.23x 3+0.78x 4+5.78x 5+14.5x 6+7.01x 7+22x 8s.t {
17.98x 1+10.77x 2+17.95x 3+3.03x 4+11.01x 5+14.57x 6+3.13x 7+19.95x 8≤173612.49x 1+6.54x 2+10.71x 3+11.92x 4+12.26x 5+3.23x 6+16.14x 7+4.98x 8≤20205.17x 1+18.62x 2+4.98x 3+2.5x 4+7.19x 5+7.85x 6+7.03x 7+19.52x 8≤4453.91x 1+19.56x 2+14.22x 3+14.93x 4+11.42x 5+13.0x 6+3.51x 7+3.0x 8≤2034x j (j =1..8)≥0
三. 论证题(以下二题任选其一)
1. 任何一个双向连通的n(n ≥3)阶竞赛图都存在“闭合”的完全路径。
2. 一个无向图是G (V,E)是区间图⇔G 的每个连通分支(连通块)都是区间图。
四. 综合建模题(以下三题任选其一):
1. 我们就方体的截断切割问题(CUMCM1997 B 题),针对0=e (即加工费用不考虑调整刀具的费用支出)做了建模分析。
这里希望你对0>e 的情形予以讨论,希望你同样将之刻画为一个多阶段动态决策问题,因此,在建模时,你要着意说明决策模型的阶段划分、状态变量与决策变量的选择或含义、权函数、状态转移方程、求解算法构造等。
2. 就节水洗衣问题(CUMCM1996B 题,原题请见:
http://10.105.221.24/sxjm/contest/source/cumcm1996/cumcm96B.PDF ),
基于某种适当的假设,可建立如下模型:
min
a ∙m +∑v i n
i=1
s.t { (b ∙∏a ∙m a ∙m +v i n i=1)/m
≤c v min ≤v i ≤v max
i =1..n
n ∈N
这里 n 表示总的洗涤轮数,v i (i =1..n)表示第i 轮洗涤时的加水量。
而a 、b 、c 、m 均为模型参数,m 表示洗涤衣物的总质量。
通过分析,也可得到结论:“在总用水量a ∙m +V total 一定的条件下,平均分配每次加水量,实现的洗涤效果最好”。
因此我们尝试某种理想化分析方法,n 、v i (i =1..n)均非负且可以连续取值,则可得最小洗衣用水量为:
a ∙m ∙n ∙(√
b (
c ∙m)⁄n
−1)(这里c ∙m <b )
即关于 n 的一个单调递减的函数,进而得到的结论是,在洗衣时,尽可能增加洗涤轮数(无穷大)、减小每轮洗涤的加水量(无穷小),可以做到最大限度的节水。
但这是不合常理的。
尝试分析上述模型的缺陷所在,建立某种改进的节水洗衣模型。
3.新冠疫情看世界:疫病发生与传播几乎伴随人类全部的演进历程,对人类造成了非常大的伤害,
同时也非常任性地改写人类历史发展的进程。
新冠肺炎目前演变为全球范围内的大型传染病,有观点认为其构成上世纪第二次世界大战之后人类遭遇的最为严重的全球性世界。
传染病有其特殊的运行机理,请查阅相关文献,给出传染病流行与控制模型;并试着用该模型解释近期新冠肺炎的传播规律;许多专业网站汇总了世界各国新冠肺炎的患病、治愈(或死亡)的动态数据,请选择一些你比较关注的国家,考查这些国家在疫病流行上表现出的动力学行为的同一性与差异性,特别,对可能存在的差异性,希望你能给出形成这种差异的主要原因。