欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

算法第四章作业

发布时间:2025/5/22 编程问答 45 豆豆
生活随笔 收集整理的这篇文章主要介绍了 算法第四章作业 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一:对贪心算法的理解

特点:

1.贪心算法的每一步都有一组选择,贪心算法总是做出在当前看来是最好的选择

2.贪心算法并不代表着整体最优,所作的选择只是某种意义的局部最优

3.贪心算法希望通过做出局部最优选择达到全局最优。但贪心算法并不能保证最终结果为最优

所需要的条件:

贪心选择性质

最优子结构性质

 

二:汽车加油问题

思想:不到迫不得已不加油(贪心选择策略

#include<iostream>
#include <stdio.h>
using namespace std;
void greedy(int d[],int n,int k) {//贪心算法
int num = 0;
for(int i = 0;i <= k;i++) {
if(d[i] > n) { //若有路程大于汽车加满油所能行走的路程
cout<<"No Solution!";
return;
}
}
for(int i = 0,s = 0;i <= k;i++) {
s += d[i];
if(s > n) {
num++; //需要加油了
s = d[i];
}
}
cout<<num<<endl;
}


int main() {
int i,n,k;
int d[1000];
cin>>n>>k;
for(i = 0;i <= k;i++)
cin>>d[i];
greedy(d,n,k);
}

3.本章学习过程中,比前两章的学习略为顺利一点,线下讨论时也没什么大问题。但在上机时,第二道题困扰了我和我队友很久,最后在大家一起思考反复验证下,最终成功!感谢队友!

 

转载于:https://www.cnblogs.com/sisilovestudy/p/10050849.html

总结

以上是生活随笔为你收集整理的算法第四章作业的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。