434
社区成员
发帖
与我相关
我的任务
分享请说明作业三”程序存储问题“的贪心策略,并用反证法证明满足贪心选择性质,并给出时间复杂度分析
作业三的贪心策略就是将数组升序排序后,从第一个所需最少的程序开始选择,到内存放不下下一个程序为止。
反证法证明:假设最优解不包括最小的2,即S = {3, 8, 18, 20},而S' = {2, 3, 8, 18, 20},|S| > |S'|,与S是最优解矛盾。
时间复杂度:程序进行了一次排序(O(nlogn))和一次循环(O(n)),时间复杂度为O(nlogn)。
2.你对贪心算法的理解
贪心算法在考虑问题时,总是做出在当前状况来说最好的算则,而不从整体来考虑。从某种意义上说是局部最优解。想要使用贪心算法,必须符合贪心选择性质和最有子结构性质。所以使用前还要考虑是否可以使用贪心算法。