码迷,mamicode.com
首页 > 编程语言 > 详细

算法第4章实践报告

时间:2018-12-02 13:34:52      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:贪心算法   复杂   记录   方法   数组   心得体会   贪心   解决   描述   

1.实践题目

程序存储题目

2.问题描述

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

3.算法描述

用一个数组存储n个正整数,它用来表示程序存放在磁带上的长度,先对给出来的数字有小到大排序,然后从小到大累加,如果没加完累加长度就大于总长度的话,就结束循环,记录当前累加了多少个数,如果已经加完,累加长度小于等于总长度的话,则输出n

4.算法时间及空间复杂度分析(要有分析过程)

由于排序使用sort()函数,其时间复杂度为O(n*lg(n)),然后对各个程序的长度进行遍历累加,时间复杂度为n  所以时间复杂度为O(n*lg(n)),空间复杂度为O(1)

5.心得体会

感觉这道题的贪心算法很快可以找出局部最优解,就是要寻找最小的储存长度,尽可能多的放进磁盘里。与搭档一起很快找出解决方法。

算法第4章实践报告

标签:贪心算法   复杂   记录   方法   数组   心得体会   贪心   解决   描述   

原文地址:https://www.cnblogs.com/victorxuan/p/10052995.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!