有一段程序如下:void GreedyKnapsack (float *x)//前置条件:w[k]已按p[k]/w[k]的非增次序排序{float u=m;for(int j=0;ju) break;x[j]=1.0;u=u-w[j];}}请问下列关于这段程序的功能说法正确的是( )。
A. 采用贪心算法求解0/1背包问题,可能得不到最优解
B. 采用贪心算法求解一般背包问题,可以得到最优解。
C. 采用贪心算法求解0/1背包问题,必能得不到最优解。
D. 采用贪心算法求解一般背包问题,可能得不到最优解。
贪心法的优点是()
A. 算法简单
B. 时间复杂度低
C. 算法的正确性需要证明
D. 空间复杂度低
贪心法并不从整体上考虑最优,而是作出当前看来是最好的选择,这种选择依赖于以前的选择,但不依赖于以后的选择和子问题。
A. 对
B. 错
贪心法是使用分步决策的方法来解决问题的,每一步决策会产生n元组的一个分量。
A. 对
B. 错