lab5-贪心算法设计与应用.doc

上传人:龙*** 文档编号:1043235 上传时间:2018-11-24 格式:DOC 页数:6 大小:60.57KB
下载 相关 举报
lab5-贪心算法设计与应用.doc_第1页
第1页 / 共6页
lab5-贪心算法设计与应用.doc_第2页
第2页 / 共6页
lab5-贪心算法设计与应用.doc_第3页
第3页 / 共6页
lab5-贪心算法设计与应用.doc_第4页
第4页 / 共6页
lab5-贪心算法设计与应用.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、实验五 贪心算法设计与应用一基本原理的概括贪心法是一种算法设计技术,通常用于求解最优化问题。通过一系列选择步骤来构造问题的解,每一步都是对当前部分解的一个扩展,直至获得问题的完整解。所做的每一步选择都必须满足:1)可行的:必须满足问题的约束。2)局部最优:当前所有可能的选择中最佳的局部选择。3)不可取消: 选择一旦做出,在后面的步骤中就无法改变了。要注意的是,贪心法不能保证总能得到最优解(一系列的局部最优选择不能保证最后得到整体最优解)二该类算法设计与实现的要点贪心算法往往效率高,一般时间复杂性为多项式阶。贪心算法一般较简单,其关键和难点在于贪心选择策略的确定,以及证明相应的贪心算法确实可求出

2、最优解。三实验目的和要求理解贪心算法的基本原理,掌握贪心算法设计的基本方法及其应用;四实验内容(一) 加油问题(Problem Set 1702):1. 问题描述一个旅行家想驾驶汽车从城市 A 到城市 B(设出发时油箱是空的) 。给定两个城市之间的距离 dis、汽车油箱的容量 c、每升汽油能行驶的距离 d、沿途油站数 n、油站 i 离出发点的距离 di以及该站每升汽油的价格 pi,i=1,2,n。设 d1=0#define MAX 20void look(float dis,float pir,int n,int d2,int oil)/dis 距离起点距离, pir 油价int i,j,k;

3、float pirce=0.0,c1=0,x,c2;for(j=0;j=oil)x=oil-c1;elsex=c2-c1;if(x0;j-)if(Aij-Aij-1lengthi)flagi=1;if(flagi=1)printf(“第%d 次结果:“,i+1);printf(“NO solution!n“);elseprintf(“第%d 次结果:“,i+1);printf(“最少油费: “);look(Ai,Bi,ni,d2i,ci);printf(“n“);printf(“n“);(二) 黑白点的匹配(Problem Set 1714):1. 问题描述设平面上分布着 n 个白点和 n 个

4、黑点,每个点用一对坐标(x, y)表示。一个黑点b=( xb,yb)支配一个白点 w=(xw, yw)当且仅当 xb=xw 和 yb=yw。若黑点 b 支配白点 w,则黑点 b 和白点 w 可匹配(可形成一个匹配对) 。在一个黑点最多只能与一个白点匹配,一个白点最多只能与一个黑点匹配的前提下,求 n 个白点和 n 个黑点的最大匹配对数。2. 具体要求Input输入的第一行是一个正整数 k,表示测试例个数。接下来几行是 k 个测试例的数据,每个测试例的数据由三行组成,其中第一行含 1 个正整数 n(naj.x|(ai.x=aj.xai=aj;aj=p;double dis(point point

5、w,point pointb)double dist;dist=sqrt(pow(pointb.x-pointw.x),2)+pow(pointb.y-pointw.y),2);return dist;int main()int i,j,n,k;cinn;point *pointw=new pointn;point *pointb=new pointn;int *b=new intn;for(i=1;ipointbi.x;for(i=1;ipointbi.y;for(i=1;ipointwi.x;for(i=1;ipointwi.y;sort(pointw,n);for(i=1;i=pointwi.xk=j;if(mindisMin)bk=0;count+;coutpointwi.x“,“pointwi.y“ cout“最大匹配数:“countendl;return 0;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课件讲义

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。