贪心算法–最优装载问题
物品不可分割,在固定容量的容器中装入更多的物品。
码头正在卸货,你需要用容量为V的货车将他们运到其余地方去,货物的数量有限,体积已知,在不考虑超重和其余无关问题的情况下,使货车尽可能多的运送货物。
脑袋清醒的都知道在选择货物时应该优先选择体积更加小的物品。
- 确定贪心策略—要求是尽可能多的运送货物,贪心策略为每次都选择体积最小的货物进行运送。
- 定义数据结构—我们使用一维数组来存储货物的体积
double v[N];//存储货物的体积
- 为了更加方便的取出最小值,先将体积数组进行排序,使用C++中的排序函数sort()对体积进行从小到大排序,sort函数中也可以定义排序规则,引入头文件;
#include<algorithm>
//语法
sort(begin,end);//begin,end分别表示数组的首地址和尾地址
//在此处
sort(v, v+n);//n是货物的个数,对货物的体积升序排序
- 进行贪心选择,寻找最优解;
使用变量