1、一。选择题1、二分搜索算法是利用( A )实现的算法。A、分治策略 B、动态规划法 C、贪心法 D、回溯法2、下列不是动态规划算法基本步骤的是( A )。A、找出最优解的性质 B、构造最优解 C、算出最优解 D、定义最优解7、衡量一个算法好坏的标准是(C)。A运行速度快B占用空间少C时间复杂度低D代码短8、以下不可以使用分治法求解的是(D)。A棋盘覆盖问题B选择问题C归并排序D0/1背包问题14.哈弗曼编码的贪心算法所需的计算时间为( B )。A、O(n2n)B、O(nlogn)C、O(2n)D、O(n)18.下面是贪心
2、算法的基本要素的是( C )。A、重叠子问题B、构造最优解C、贪心选择性质D、定义最优解24.( D )是贪心算法与动态规划算法的共同点。A、重叠子问题B、构造最优解C、贪心选择性质D、最优子结构性质25.矩阵连乘问题的算法可由( B)设计实现。A、分支界限算法 B、动态规划算法 C、贪心算法 D、回溯算法27、Strassen矩阵乘法是利用( A )实现的算法。A、分治策略 B、动态规划法 C、贪心法 D、回溯法29、使用分治法求解不需要满足的条件是(A)。A子问题必须是一样
3、的B子问题不能够重复C子问题的解可以合并D原问题和子问题使用相同的方法解30、下面问题(B)不能使用贪心法解决。A单源最短路径问题BN皇后问题C最小花费生成树问题D背包问题31、下列算法中不能解决0/1背包问题的是(A)A贪心法B动态规划C回溯法D分支限界法34.实现合并排序利用的算法是( A )。A、分治策略B、动态规划法C、贪心法D、回溯法35.下列是动态规划算法基本要素的是( D )。A、定义最优解B、构造最优解C、算出最优解D、子问题重叠性质36.下列算法中通常以自底向下的方式求解最优解的是( B )。A、分治法B、动态规划
4、法C、贪心法D、回溯法38、合并排序算法是利用( A )实现的算法。A、分治策略 B、动态规划法 C、贪心法 D、回溯法40、背包问题的贪心算法所需的计算时间为( B )A、O(n2n) B、O(nlogn) C、O(2n) D、O(n)41.实现大整数的乘法是利用的算法( C )。A、贪心法B、动态规划法C、分治策略D、回溯法44.贪心算法与动态规划算法的主要区别是( B )。A、最优子结构B、贪心选择性质C、构造最优解D、定义最优解47.背包问题的贪心算法所需的计算时间为( B
5、 )。A、O(n2n)B、O(nlogn)C、O(2n)D、O(n)52.一个问题可用动态规划算法或贪心算法求解的关键特征是问题的( B )。A、重叠子问题B、最优子结构性质C、贪心选择性质D、定义最优解53.采用贪心算法的最优装载问题的主要计算量在于将集装箱依其重量从小到大排序,故算法的时间复杂度为(B)。A、O(n2n)B、O(nlogn)C、O(2n)D、O(n)55.实现最长公共子序列利用的算法是( B )。A、分治策略B、动态规划法C、贪心法D、回溯法二、填空题1.算法的复杂性有时间复杂性和空间复杂性之分。2、程序是