1.题目描述:
不同的货物类型有不同的重量,现在给我可以最大装载量,请问最多可以装载多少货物。
eg:输入:不同货物的类型和重量;
输出:最大的装载量
2.解题思路:
(1)首先,我们要解决不同货物类型有不同的重量,这个明显是一个对象数组,这个时候,我们就要进行相应的排序。(从小到大)
(2)我们将排序好的货物,进行添加到我们的装载车上,要有resWeight来标记装载的剩余重量。当前的货物重量不能打印剩余重量。
(3)最后输出装载的货物总数。
3.上代码:
(1)排序算法:
function sortBox(Boxes){
for(let i = 0;i<Boxes.length;i++)
{
for(let j = i+1;j<Boxes.length;j++)
{
if(Boxes[i].val>Boxes[j].val)
{
var temp = Boxes[i];
Boxes[i] = Boxes[j];
Boxes[j] = temp;
}
}
}
return Boxes;
}
(2)核心算法:
function getBestNum(nums,totalWeight)
{
var resWeight=totalWeight;//最开始,剩余的重量就是总重量;
var boxes = sortBox(nums);
var finalWeight = 0;
var count = 0;
var isgetBox = [];
for(let i =0;i<boxes.length;i++)
{
if(boxes[i].val<=