1.贪心算法在我看来就是每一步都是最优的选择,不断累加的局部**选择,最后得到的总结果就是最优解,但这个的前提是每次贪心选择的策划得当,如果策略没选好,最好的结果不一定是最优解,而且可供贪心选择的策略并不是唯一的,不同的选择策略可能最后得到的结果都是最优解。

设有n 个程序{12… n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是 li,1≤i≤n。 程序存储问题要求确定这n 个程序在磁带上的一个存储方案, 使得能够在磁带上存储尽可能多的程序。 对于给定的n个程序存放在磁带上的长度,计算磁带上最多可以存储的程序数。

输入格式:

第一行是2 个正整数,分别表示文件个数n和磁带的长度L。接下来的1行中,有n个正整数,表示程序存放在磁带上的长度。

假设最短优先的选择策略得到的结果不算最优解,则最短优先得到的结果:2 3 8 13 20 不是最优解,与已知的结论矛盾,所以最短优先选择策略可以得到最优解。

这章的题目不算太难,但也是有难点的,比如4-2 删数问题,我与同伴的想法一开始是一样的,但是后来我发现错误,我们的做法改变了原本的排序,我跟我的同伴说了错误的原因,以及应该如何避免错误,但是他有点固执,不过后面他也及时发现了错误,并且找到了正确的解法,还交会我怎么才是正解(感动),结对编程真的太棒了!