数据结构与算法--pta复习

这篇具有很好参考价值的文章主要介绍了数据结构与算法--pta复习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 拓扑排序:有向无环图中各顶点构成的有序序列

拓扑序一定是唯一的 F

如果从有向图 G 的每一点均能通过深度优先搜索遍历到所有其它顶点,那么该图一定不存在拓扑序列 T

AOE图的权值最大的边(活动)一定是关键活动  F

在关键路径上的活动都是关键活动,而关键活动也必在关键路径上。T

关键路径是AOE网中从源点到汇点的最短路径 F 最长路径

在AOE网络中,从源点到汇点具有最大长度的路径称为关键路径。完成AOE所表示的整个工程所需要的时间取决于关键路径的路径长度 T

The figure shows an AOV network. Which one of the following is a possible topological order of the network? 

在关键路径上的活动都是关键活动,而关键活动也必在关键路径上。,数据结构,c语言

A.ABCDFEG

B.ADFCEBG

C.ACDFBEG 

D.ABDCEFG

How many distinct topological sequences are there in the following DAG?

在关键路径上的活动都是关键活动,而关键活动也必在关键路径上。,数据结构,c语言

A.2

B.3

C.4

D.5

修改递归方式实现的图的深度优先搜索(DFS)算法,将输出(访问)顶点信息的语句移动到退出递归前(即执行输出语句后立即退出递归)。采用修改后的算法遍历有向无环图 G,若输出结果中包含 G 中的全部顶点,则输出的顶点序列是 G 的:

A.拓扑有序序列

B.逆拓扑有序序列

C.广度优先搜索序列

D.深度优先搜索序列

下图所示的 AOE 网表示一项包含 8 个活动的工程。活动 d 的最早开始时间和最迟开始时间分别是:

在关键路径上的活动都是关键活动,而关键活动也必在关键路径上。,数据结构,c语言

A.3 和 7

B.12 和 12

C.12 和 14

D.15 和 15

关键路径:1356和13256→项目总时间=8+10+9=27

→由关键活动构成的从开始到完成的路径; 也是路径长度最长的路径。

d的最短路径=c+b=12

g最晚发生时间=项目总时间-g=21

d最晚发生时间=g最晚发生时间-d=14

  • B树

m阶B树的根结点最多有m棵子树  T

对B树删除某一关键字值时,可能会引起结点的分裂 F  删除时是:合并, 插入时是:分裂

基数排序是稳定的算法。T

基数排序只适用于以数字为关键字的情况,不适用于以字符串为关键字的情况。T

下列叙述中,不符合m阶B树定义要求的是:

A.叶结点之间通过指针链接 

B.根结点最多有m棵子树

C.所有叶结点都在同一层上

D.各结点内关键字均升序或降序排列

棵m阶的B+树和m阶的B-树的差异在于:

 (1)有n棵子树的结点中含有n个关键码;

 (2)所有的叶子结点中包含了全部关键码的信息,及指向含有这些关键码记录的指针,且叶子结点本身依关键码的大小按自小而大的顺序链接(有序!),此处可知A是B+的特征;

 (3)所有的非终端结点可以看成是索引部分,结点中仅含有其子树根结点中最大(或最小)的关键码,叶结点和非叶结点中存的有一些键值是一样的

高度为 5 的 3 阶 B 树含有的关键字个数至少是:

A.15

B.31

C.62

D.242

B树

除根结点外的所有非叶结点至少有[m/2]个子节点,最多m个

至少t-1个关键字,至多2t-1个(t为子节点),一个包含x个关键字的节点有x+1个孩子

根节点:至少2个孩子,关键字至少1

第2-5层:至少[3/2]=2个孩子,关键字至少1个

总:1+2+2*2+2*2*2+2*2*2*2=31

  • 回溯法

在N皇后问题中,由于其对应的决策树有N!个叶子结点,所以解决此问题的空间复杂度是Ω(N!)。F 理由错了:放置第一个皇后有 N 种可能,放置两个皇后不超过N(N-2)种可能,放置三个皇后不超过N(N - 2)(N - 4)种可能 ,以此类推。

在4皇后问题中,(x1​, x2​, x3​, x4​)对应4个皇后位置的列下标。在回溯剪枝过程中,状态(1, 3, 4, ?)会在(1, 4, 2, ?)之前被检查,并且它们对应的分支都没有解。T

关于回溯法以下叙述中不正确的是( )。

A.回溯法有“通用解题法”之称,它可以系统地搜索一个问题的所有解或任意解

B.回溯法是一种既带系统性又带跳跃性的搜索算法

C.回溯法需要借助队列这种结构来保存从根结点到当前扩展结点的路径

D.回溯法在生成解空间的任一结点时先判断该结点是否可能包含问题的解,如果肯定不包含,则跳过对该结点为根的子树的搜索,逐层向祖先结点回溯

回溯法在问题的解空间树中,按______策略,从根结点出发搜索解空间树。

A.广度优先

B.活结点优先

C.扩展结点优先

D.深度优先

  • 贪心算法

只有当局部最优跟全局最优解一致的时候,贪心法才能给出正确的解  T

哈夫曼编码是一种最优的前缀码。对一个给定的字符集及其字符频率,其哈夫曼编码不一定是唯一的,但是每个字符的哈夫曼码的长度一定是唯一的。F 不一定唯一

用于求最小生成树的Prim算法和Kruskal算法都是基于( )思想设计的算法。

A.分治算法

B.穷举

C.贪心算法

D.回溯算法

下面(   )是贪心算法的基本要素之一

A.重叠子问题

B.构造最优解

C.贪心选择性质

D.定义最优解

  • 分治法

给定两个 n×n 的矩阵 A 和 B,计算矩阵乘法 C=A⋅B 的简单方法的时间复杂度是 O(n3)。下面考虑用分治法的思路解决这个问题:

将每个矩阵按如下方式分裂为四个 2n​×2n​ 的子矩阵:

在关键路径上的活动都是关键活动,而关键活动也必在关键路径上。,数据结构,c语言

递归地计算 C 的每个块,如 C1​=A1​⋅B1​+A2​⋅B3​ 等等。这样做的时间复杂度比简单计算要低。F

分法法的设计思想是将一个难以直接解决的大问题分割成规模较小的子问题,分别解决子问题,最后将子问题的解组合起来形成原问题的解,这要求原问题和子问题()。

A.问题规模相同,问题性质相同

B.问题规模相同,问题性质不同

C.问题规模不同,问题性质相同

D.问题规模不同,问题性质不同

若分治法的时间递归式是:
T(n) = aT(n/b) + O(n^c)
那么把二分查找法看成分治法时,上述公式中的a,b,c分别是--

A.2,2,1

B.1,2,1

C.2,2,0

D.1,2,0

T(n)=a*T(n/b)+ f(n)

a:递推子问题的数量

n/b:子问题的规模

f(n):递推以外的计算工作

.实现大整数的乘法是利用的算法( )。

A.贪心法

B.动态规划法

C.分治策略

D.回溯法

  • 动态规划

用动态规划而非递归的方法去解决问题时,关键是将子问题的计算结果保存起来,使得每个不同的子问题只需要被计算一次。子问题的解可以被保存在数组或哈希散列表中。T

对给定的输入I 和一个给定的(确定性)算法A,如果A不会无限循环,则判定问题HALTING返回“真”,否则将无限循环。则HALTING问题是NP完全的。F

考虑有n件物品的背包问题,如果没有物品的大小超过n3,则这个问题就不再是NP难问题。F

下列算法中通常以自底向上的方式求解最优解的是( )。

A.备忘录法

B.动态规划法

C.贪心法

D.回溯法

动态规划的基本要素为____。

A.最优子结构性质与贪心选择性质

B重叠子问题性质与贪心选择性质

C.最优子结构性质与重叠子问题性质

D.预排序与递归调用文章来源地址https://www.toymoban.com/news/detail-794841.html

到了这里,关于数据结构与算法--pta复习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构拓扑排序以及关键路径(出度邻接表)C语言 完整代码

    现实生活中一项工程通常会拆分成多个部分来进行,这些部分有些相互之间有发生的前提关系,还有些可以同时发生且不会互相打扰,但是合理且充分的利用时间来完成项目是一个问题。在项目完成的过程中,那些项目的完成时间被压缩可以压缩工程的总时间,以便于提高整

    2024年02月04日
    浏览(35)
  • 数据结构第12周 :( 有向无环图的拓扑排序 + 拓扑排序和关键路径 + 确定比赛名次 + 割点 )

    【问题描述】 由某个集合上的一个偏序得到该集合上的一个全序,这个操作被称为拓扑排序。偏序和全序的定义分别如下:若集合X上的关系R是自反的、反对称的和传递的,则称R是集合X上的偏序关系。设R是集合X上的偏序,如果对每个x,y∈X必有xRy或yRx,则称R是集合X上的全序

    2024年02月08日
    浏览(27)
  • 数据结构与算法期末复习——知识点+题库

    (1)数据:所有能被计算机识别、存储和处理的符号的集合(包括数字、字符、声音、图像等信息 )。 (2)数据元素:是数据的基本单位,具有完整确定的实际意义。在计算机程序中通常作为一个整体进行考虑和处理。一个数据元素可由若干个数据项组成。 (3)数据项:构成数据元

    2024年02月12日
    浏览(36)
  • 【数据结构与算法】第七章-图【期末复习】

    图:有向图、网,无向图、网。 顶点 边:有向图图称作弧,分弧头弧尾。 依附:边依附点,边和点关联 邻接:点邻接点 度:点关联的边的数目 完全图: 无向: C n 2 C_n^2 C n 2 ​ 条边; 有向: 2 C n 2 2C_n^2 2 C n 2 ​ 条边 连通:若干结点互相可以通信,用手提起一个结点可以顺

    2024年02月01日
    浏览(46)
  • 《数据结构与算法》之队列与链表复习

    我们在上一次学习了堆栈的数据结构以后,可以了解到它是受限制的操作,比如我们操作只能在栈顶,现在我们要学习的东西叫做队列,它也是受限制的一种数据结构,它的特点是队头只出数据,而队尾只入数据, 它的结构就和它的名字,像我们平时排队一样先来的人肯定要

    2024年02月08日
    浏览(29)
  • 【地铁上的面试题】--基础部分--数据结构与算法--动态规划和贪心算法

    一、动态规划的基本概念和思想 1.1 动态规划的定义和特点 动态规划是一种解决多阶段决策问题的算法思想,它通过将问题划分为若干个子问题,并保存子问题的解来求解原问题的方法。动态规划的特点包括以下几个方面: 最优子结构性质:动态规划问题具有最优子结构,即

    2024年02月12日
    浏览(41)
  • 【Python数据结构与算法】—— 搜索算法 | 期末复习不挂科系列

    ​ 🌈个人主页:  Aileen_0v0 🔥系列专栏:  数据结构与算法 💫个人格言: \\\"没有罗马,那就自己创造罗马~\\\" 这篇博客主要探索的是计算机科学常见问题---搜索算法 “时间紧,任务重!” 话不多说,开始今天的学习之旅吧⛵~ 目录 搜索 定义 -in 顺序搜索  无序表的顺序搜索

    2024年02月05日
    浏览(27)
  • 数据结构与算法----复习Part 8 (链表双指针)

    本系列是算法通关手册LeeCode的学习笔记 算法通关手册(LeetCode) | 算法通关手册(LeetCode) (itcharge.cn) 本系列为自用笔记,如有版权问题,请私聊我删除。 目录 一,双指针简介(Two Pointers) 二,起点不一致的快慢指针 三,步长不一致的快慢指针 判断链表中是否含有环: 四

    2024年02月19日
    浏览(34)
  • 【算法与数据结构】112、LeetCode路径总和

    所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。    思路分析 :本题通过计算根节点到叶子节点路径上节点的值之和,然后再对比目标值。利用文章【算法和数据结构】257、LeetCode二叉树的所有路径中的递归算法。 这里要注意,默认路径之和是

    2024年02月11日
    浏览(32)
  • 【算法与数据结构】62、LeetCode不同路径

    所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。    思路分析 :机器人只能向下或者向右移动,那么到达(i,j)位置的路径和(i-1,j)以及(i,j-1)有关。那么我们就得到的动态规划的表达式 d p [ i ] [ j ] = d p [ i − 1 ] [ j ] + d p [ i ] [ j − 1 ] dp[i][

    2024年01月18日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包