几个算法分析题
thncn 2008-08-02 07:17:17 请高手帮我解一下,解题过程越标准越好
1. 简答题 (20分)
1).什么是贪心性质?
2). 什么是最优子结构性质?
3). 什么是回溯算法的解空间?
2.(20分)若在0-1背包问题中各物品是依重量递增排列时,其价值恰好依递减序排列。对这个特殊的0-1背包问题,请设计一个有效算法找出最优解,并讨论你的算法的时间复杂度.
3.(20分)设A[1..n] 是一个由n 个整数组成的数组, x 是一个整数,给出一个分治算法,要求找出 x 在数组 A 中的频度,即 x 在A 中出现的次数。你的算法的时间复杂度是多少?
4.(20分)定义0/1/2背包问题为: 。限制条件为: ,且 。设f(i , y)表示剩余容量为y,剩余物品为:i,i+1,…,n时的最优解的值。
1) 给出f(i , y)的递推表达式;
2) 请设计求解f(i , y)的算法,并用伪代码描述你的算法;
3) 设W=[10,20,15,30],P=[6,10,15,18],c=48,请用你的算法求解。
5.(20分)子集和问题:对于集合S={1,2 ,6,8},求子集,要求该子集的元素之和d=9。
1) 画出子集和问题的解空间树;
2) 该树运用回溯算法,写出依回溯算法遍历节点的顺序;
3) 如果S中有n个元素,指定d,用伪代码描述求解子集和问题的回溯算法。