下载此文档

汽车加油问题实验报告(共5页).doc


文档分类:汽车/机械/制造 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
一、实验名称:
用贪心算法解决)
{ //求一个从m到n的数列的和
int sb;
for(int i=m;i<n;i++) sb+=b[i];
return sb;
}

int Tanxin(int a[n], int N) //a[n]表示加油站的个数,N为加满油能行驶的最远距离
{
int b[n]; //若在a[i]加油站加油,则b[i]为1,否则为0
int m=0;

if(a[i]>N) return ERROR; //如果某相邻的两个加油站间的距离大于N,则不能到达终点
if(add(a[i], 0, n)<N)
{ //如果这段距离小于N,则不需要加油
b[i]=0;
return add(b[i],0,n);
}
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
if(a[i]==a[j]&&a[i]==N)
{ //如果每相邻的两个加油站间的距离都是N,则每个加油站都需要加油
b[i]=1;
return add(b[i],0,n);
}
if(a[i]==a[j]&&a[i]<N)
{ //如果每相邻的两个加油站间的距离相等且都小于N
if( add(a[i],m,k) < N && add(a[i],m,k+1) > N )
{
b[k]=1;
m+=k;
}
return add(b[i],0,n);
}
if(a[i]!=a[j])
{ //如果每相邻的两个加油站间的距离不相等且都小于N
if( add(a[i],m,k) < N && add(a[i],m,k+1) > N )
{
b[k]=1;
m+=k;
}
return add(b[i],0,n);
}
viod main( )
{
int a[ ];
scanf("%d",a);
scanf("/n");
scanf("/d",&N);
Tanxin(a[ ],0,n);
}
贪心算法正确性证明:
贪心选择性质
所谓贪心选择性质是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。对于一个具体的问题,要确定它是否具有贪心性质,我们必须证明每一步所作的贪心选择最终导致问题的一个整体最优解。该题设在加满油后可行驶的N千米这段路程上任取两个加油站A、B,且A距离始点比B距离始点近,则若在
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业

汽车加油问题实验报告(共5页) 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人bai1968104
  • 文件大小60 KB
  • 时间2022-05-05