【PTA】【数据结构与算法】动态规划

判断题

1.如果一个问题可以用动态规划算法解决,则总是可以在多项式时间内解决的。
TF
2.最优二叉搜索树的根结点一定存放的是搜索概率最高的那个关键字。
TF
3.用动态规划而非递归的方法去解决问题时,关键是将子问题的计算结果保存起来,使得每个不同的子问题只需要被计算一次。子问题的解可以被保存在数组或哈希散列表中。
TF
4.For finding an optimal binary search tree, we can use the same greedy algorithm as the one for building a Huffman tree.
TF
5.The weighted Activity Selection problem with weights in the set {1, 2} can be solved optimally by the same greedy algorithm used for the unweighted case.
TF

选择题

1.切原木问题:给定一根长度为N米的原木;另有一个分段价格表,给出长度L=1,2,⋯,M对应的价格PL 。要求你找出适当切割原木分段出售所能获得的最大收益RN​​ 。例如,根据下面给出的价格表,若要出售一段8米长的原木,最优解是将其切割为2米和6米的两段,这样可以获得最大收益R8 =P2​​ +P6=5+17=22。而若要出售一段3米长的原木,最优解是根本不要切割,直接售出。

在这里插入图片描述
下列哪句陈述是错的?

选项
A此问题可以用动态规划求解
B若N≤M,则有RN​​ =max{PN ,max​1≤i<N​​ {Ri​​ +RN-i}}
C若N>M,则有RN=max​1≤i<N​​ {R​​i​​ +R​N−M​​ }
D算法的时间复杂度是O(N2)
2.在求解最优二叉搜索树问题时,我们用到递推式 cij=min​i≤l≤j​​ {w​​ij​​ +c​​i,l−1​​ +c​l+1,j}。要通过迭代求解此式,必须用以下哪种方式填表:
选项
Afor i= 1 to n-1 do;
for j= i to n do;
for l= i to j do
Bfor j= 1 to n-1 do;
for i= 1 to j do;
for l= i to j do
Cfor k= 1 to n-1 do;
    for i= 1 to n-k do;
set j = i+k;
     for l= i to j do
Dfor k= 1 to n-1 do;
  for i= 1 to n do;
set j = i+k;
    for l= i to j do
3.在动态规划中,我们要推导出一个子问题的解与其他子问题解的递推关系。要将这种关系转换为自底向上的动态规划算法,我们需要以正确的顺序填写子问题解的表格,使得在解任一子问题时,所有它需要的子问题都已经被解决了。在下列关系式中,哪一个是不可能被计算的?
选项
AA(i,j)=min(A(i−1,j),A(i,j−1),A(i−1,j−1))
BA(i,j)=F(A(min{i,j}−1,min{i,j}−1),A(max{i,j}−1,max{i,j}−1))
CA(i,j)=F(A(i,j−1),A(i−1,j−1),A(i−1,j+1))
DA(i,j)=F(A(i−2,j−2),A(i+2,j+2))
4.给定递推方程 fi,j,k=f​i,j+1,k​​ +min​​0≤l≤k​​ {f​i−1,j,l​​ +w​j,l​​ }。要通过循环解此方程,我们一定不能用下列哪种方法填表?
选项
Afor k in 0 to n: for i in 0 to n: for j in n to 0
B for i in 0 to n: for j in 0 to n: for k in 0 to n
Cfor i in 0 to n: for j in n to 0: for k in n to 0
Dfor i in 0 to n: for j in n to 0: for k in 0 to n
5.Which one of the following problems can be best solved by dynamic programming?
选项
AMergesort
BClosest pair of points problem
CQuicksort
DLongest common subsequence problem
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值