第四章实验报告

1.实践题目:程序存储问题

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

2.问题描述:要让磁带上最多可以存储的程序数,就要让长度短的程序优先

3.算法描述:采用贪心算法,先把程序按长短排序,然后在L的范围内把尽可能多的程序放上去

#include<iostream>

#include<algorithm>

using namespace std;

int main()

{

int n,length, j=0;

int a[1000];

cin>>n>>length;

for(int i=0;i<n;i++)

{

cin>>a[i];

}

sort(a,a+n);

while(length>0&&j<n)

{

length-=a[j];

if(length>=0) j++;

}

cout<<j;

return 0;

}

4.算法时间及空间复杂度分析:时间复杂度:o(n)

空间复杂度:o(n)

5.心得体会

没有递归生活美好。选择当前状态下局部最好选择,即最短程序,是贪心算法的应用。

原文地址:https://www.cnblogs.com/cm0809/p/10053541.html

时间: 2024-07-30 00:27:44

第四章实验报告的相关文章

linux第四章实验报告

Linux第四章 用户和文件权限管理 实验环境 公司的linux主机即将提供给技术部作为开发服务器使用,根据部门内项目组的构成情况,首先需要建立相应的组账号.用户账号,并作为目录设置权限,还需要设置一个共用的数据存储目录,便于同事之间的数据交换. 需求描述 1.建立用户目录 创建目录/tech/benet和/tech/accp,分别用于存放各项目组中用户账号的宿主文件夹.例如,kylin用户的宿主目录应位于/tech/benet/kylin. 2.添加组账户 为两个项目组添加组账号benet,a

2019春第四次实验报告

2019春第四次实验报告 一.实验项目名称 flappy bird 二.实验项目功能描述 用户通过空格键控制小鸟躲过障碍物 三.项目模块结构介绍 四.实现界面展示 五.代码托管链接 https://gitee.com/wenyizhang999/ZWY/blob/master/%E5%B0%8F%E9%B8%9F.cpp 六.实验总结 问题:没有声音,没有图片 解决方法:根据书上提供的材料下载图片,在根据要求的格式上传文件地址 总结:第五章内容和以前学的东西联系上了,文件的储存及使用,越到后期越

数据结构与算法 第四次实验报告 图

数据结构与算法 第四次实验报告 姓名:许恺 学号:2014011329 班级:计算机14-1     中国石油大学(北京)计算机科学与技术系 1.图的定义,文件为"Graph.h" #ifndef GRAPH_H//定义头文件 #define GRAPH_H #include<string>//引入标准库中的头文件 using namespace std; const int MaxSize=12; struct ArcNode//定义边表结点 { int adjvex;/

20135239益西拉姆第四次实验报告

北京电子科技学院(BESTI) 实验报告 课程:JAVA第四次实验报告 班 级: 1352 姓 名:益西拉姆 学 号:20135239 成 绩: / 指导教师: 娄嘉鹏 实验日期: 2015.06.09 实验密级: / 预习程度: / 实验时间:15:00--18:00 仪器组次:39 必须/选修: 选修 实验序号:04 实验名称: 第四次实验 实验仪器: 名称 型号 数量 PC机 DELL 1 实验内容: 1:编写网络通信程序.(基于TCP) 2:对通信内容使用对称加密算法进行加密. 3:使用

第四次实验报告:RIP路由协议的解析

第四次实验报告:RIP路由协议的解析 姓名:王璐璐 学号:201821121037 班级:计算1812 0 摘要 在此次实验中,通过对两个路由器之间的路由表的建立与更新情况的分析,解析RIP路由协议,以此了解网络层的工作原理. 1 实验目的 理解RIP路由表的建立与更新 感受RIP坏消息传得慢 2 实验内容 使用Packet Tracer,正确配置网络参数,使用命令查看和分析RIP路由信息. 建立网络拓扑结构 配置参数 分析RIP路由信息 3 实验报告 下面将在两台PC机之间连接两台路由器,配置

第九章实验报告(构造数据类型实验)

c语言程序报告 姓名:吴波?????实验地点:第一教学楼514教室?????实验时间:6月26日 实验项目: 9.3.1.试利用结构体类型描述年.月.日,输入一个日期,统计该日期是本年度第多少天. 9.3.2. 在选举中进行投票,包含候选人姓名.得票数,假设有多为候选人,用结构体数组统计各候选人的得票数. 9.3.3. 若将教师和学生的数据放在同一表格中.教师的数据包括编号.姓名.职业和职务,学生的数据包括编号.姓名.职业和班级.试编写程序填写表格. 9.3.4.n个人围成一圈,从第s个人开始按

20182310第四次实验报告

20182310 <数据结构与面向对象程序设计>实验3实验报告 课程:<数据结构与面向对象程序设计> 班级:1823 姓名:周烔 学号:20182310 实验老师:王志强 实验日期:2019/9/30 选修/必修:必修 1.实验内容 (一)Java Socket编程 1.学习蓝墨云上教材<Java和Android编程>"第16章 输入/输出 "和"第22章 网络",学习JavaSocket编程 2.结对编程.结对伙伴A编写客户端S

第三章实验报告

第三章实践报告 一.实践题目 给定一个由 n行数字组成的数字三角形如下图所示.试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大. 输入格式: 输入有n+1行: 第 1 行是数字三角形的行数 n,1<=n<=100. 接下来 n行是数字三角形各行中的数字.所有数字在0..99 之间. 输出格式: 输出最大路径的值. 输入样例: 在这里给出一组输入.例如: 5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 输出样例:

《信息安全系统设计》第四次实验报告

实验报告:外设驱动设计 小组成员 :20145306张文锦,20145334赵文豪,20145331魏澍琛. 实验仪器:windows xp,arm开发板. 实验内容.步骤与体会 1. 进入/arm2410cl/exp/drivers/01_demo,使用vi 编辑器阅读理解源代码. 2. Makefile 中有两种编译方法,可以在本机上使用gcc:也可以使用交叉编译器进行编译. 如果编译的时候出现问题,需要是在/usr/src 下没有建立一个linux 连接,可以使用下面的命令:[[email