算法设计实验报告六
更新时间:2023-07-28 09:05:01 阅读量: 实用文档 文档下载
姓名: 学号:
实验六
实验目的:通过对例题分析、设计、调试,体会和掌握贪心法在程序设计中的应用,并进行
贪心优化的相应练习。
实验要求:综述应用贪心法求解问题的特点,并从贪心对象的选择、程序结构与参数设置的
改进等方面对贪心设计进行优化。
实验内容:
1、/* 贪心删数字 */
#include<stdio.h>
void main()
{ int i,j,k,m,n,t,x,a[200];
char b[200];
printf("请输入整数:");
scanf("%s",b);
for(n=0,i=0;b[i]!='\0';i++)
{n++;a[i]=b[i] -48;}
printf("删除数字个数: ");scanf("%d",&k);
printf("以上%d位整数中删除%d个数字分别为: ",n,k);
i=0;m=0;x=0;
while(k>x && m==0)
{i=i+1;
if(a[i-1]<a[i]) /* 出现递增,删除递增的首数字 */
{printf("%d ",a[i-1]);
for(j=i-1;j<=n-x-2;j++)
a[j]=a[j+1];
x=x+1; /* x统计删除数字的个数 */
i=0; /* 从头开始查递增区间 */
}
if(i==n-x-1) /* 已无递增区间,m=1脱离循环 */
m=1; }
printf("\n删除后所得最大数: ");
for(i=1;i<=n-k;i++) /* 打印剩下的左边n-k个数字 */
printf("%d",a[i-1]);
}
实验数据:输入762091754639820463
删除数字个数:6
以上删除6个数字分别为: 删除后所得最大数:
2、/* 可拆背包问题 */
#include <stdio.h>
#define N 50
void main()
{float p[N],w[N],x[N],c,cw,s,h;
int i,j,n;
printf("\n input n:"); scanf("%d",&n); /* 输入已知条件 */
printf("input c:"); scanf("%f",&c);
for(i=1;i<=n;i++)
{printf("input w%d,p%d:",i,i);
scanf("%f,%f",&w[i],&p[i]);
}
for(i=1;i<=n-1;i++) /* 对n件物品按单位重量的效益从大到小排序 */ for(j=i+1;j<=n;j++)
if(p[i]/w[i]<p[j]/w[j])
{ h=p[i];p[i]=p[j]; p[j]=h;
h=w[i];w[i]=w[j]; w[j]=h;
}
cw=c;s=0; /* cw为背包还可装的重量 */
for(i=1;i<=n;i++)
{if(w[i]>cw) break;
x[i]=1.0; /* 若w(i)<=cw,整体装入*/
cw=cw-w[i];
s=s+p[i];
}
x[i]=(float)(cw/w[i]); /* 若w(i)>cw,装入一部分x(i) */
s=s+p[i]*x[i];
printf("装包:"); /* 输出装包结果 */
for(i=1;i<=n;i++)
if(x[i]<1) break;
else
printf("\n 装入重量为%5.1f的物品.",w[i]);
if(x[i]>0 && x[i]<1)
printf("\n 装入重量为%5.1f的物品百分之%5.1f.",w[i],x[i]*100);
printf("\n 所得最大效益为:%7.1f ",s);
}
运行程序,
Input n:5
Input c:90.0
Input w1,p1:32.5,56.2
Input w2,p2:25.3,40.5
Input w3,p3:37.4,70.8
Input w4,p4:41.3,78.4
Input w5,p5:28.2,40.2
装包:装入重量为 的物品
装入重量为的物品
装入重量为的物品百分之所得最大效益为: 。
正在阅读:
算法设计实验报告六07-28
教科版语文三年级下册三四单元11-26
形位公差-课题二 基本几何量精度05-13
柴油机运行故障分析及处理方法研究01-28
计算机网络实验报告05-19
加油站应急预案(综合)06-09
学习省委十一届四中全会精神心得体会05-11
金蝶K3常见问题目录01-18
新人教版七年级语文古诗文(上册).doc04-15
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 算法
- 实验
- 报告
- 设计
- 高等学校研究生英语系列教材(听说教程)(上)李萌涛__听力书听力原文及答案(1-8Unit)
- 第三章微型计算机系统组成
- 07 损失模型:免赔、限额、共保和通胀的影响
- 六年级毕业典礼主持词
- 部编版三年级数学下册第一次月考卷及答案(三套)
- 软件项目风险管理
- 四川篇导学案最终版1
- 4radical-chain initiation 3
- 西藏林芝一中高考数学三模试卷(理科) Word版含解析
- 2015年11月3日最新必过版2015年广西生态文明与可持续发展公需科目参考答案
- 农村道路建设工程项目可行性研究报告
- 注塑成型作业指导书
- 2011年全国中考物理 实验11 探究电磁铁磁性的强弱精品试题分类汇编
- 发明专利初审流程
- 第5课《古代的经济政策》(人教版必修二)
- 试卷版《列代数式、代数式的值》同步练习
- (创新方案,解析版 大纲人教版)第二部分 第八单元 第二十课北洋军阀前期的统治及民族资本主义发展的春
- 2015监理工程师化工石油工程(94分)
- 世界自然地理期末复习资料
- 日本语能力测试N2模拟题