问题描述:有一批集装箱要装上一艘载重量为c的轮船。其中集装箱i的重量为Wi。最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。 编程任务: 对于给定的n个集装箱和轮船的载重量C,编程计算装入最多时的集装箱个数。输入:输入由多组测试数据组成。每组测试数据输入的第1行中有2个正整数n和C。正整数n是集装箱个数;正整数C是轮船的载重量。接下来的一行中有n个整数,分别表示n个集装
转载 2023-06-27 23:14:00
112阅读
最优装载问题
原创 2021-08-02 14:19:25
487阅读
最优装载问题
原创 2021-08-02 15:56:15
242阅读
背包问题给定一个载重量为M的背包,考虑n个物品,其中第i个物品的重量 wi ,价值vi (1≤i≤n),要求把物品装满背包,且使背包内的物品价值最大。 (1)当作0-1背包问题,用动态规划算法,获得最优值220; (2)当作0-1背包问题,用贪心算法,按性价比从高到底顺序选取物品,获得最优值160。由于物品不可分割,剩下的空间白白浪费。 (3)当作背包问题,用贪心算法,按性价比从高到底的顺序选取物
转载 2023-06-05 14:28:23
122阅读
   该算法只用一层循环,时间复杂度是O(n);【算法精髓】   解决最优装载问题之前,需要把所有物体按重量从小到大排序;   该算法使用了...
原创 2021-08-25 14:10:19
2302阅读
一、问题描述有n个集装箱要装上2艘载重量分别为c1和c2的轮船,其中第i个集装箱i的重量为w[i],要求确定是否有一个合理的装载方案可将这些集装箱装上这2艘轮船。如果有,找出一种装载方案。二、问题分析(1) n个集装箱的重量之和肯定小于等于2艘轮船的载重量c1+c2,不然不可能全部装入,即∑w[i] <= c1 + c2。(2) 为将所有集装箱装入2艘轮船,我们无需考虑如何将集装箱分配到2艘
问题描述:有n个集装箱要装上2艘载重量分别为c1和c2的轮船,其中集装箱i的重量为体集装箱的一...
原创 2023-05-25 16:57:39
275阅读
附一张图方便理解,一个类的执行过程类的加载过程,简明的来说  类装饰器就是寻找类的字节码文件并构造出类在JVM内部表示的对象组件。在Java中,类装载器把一个类装入JVM中,要经过以下步骤:装载:查找和导入Class文件;链接:执行校验、准备和解析步骤,其中解析步骤是可以选择的:校验:检查载入Class文件数据的正确性;准备:给类的静态变量分配存储空间;解析:将符号引用转成直接引用;初始化:对类的
转载 2023-07-19 02:54:44
66阅读
(1)问题描述:有一批共 n 个集装箱要装上 2 艘载重量分别为 capacity1 和 capacity2 的轮船,其中集装箱 i 的重量为 wi,且装载问题要求确定是否有一个合理的装载方案可将这些集装箱装上这 2 艘轮船。如果有,找出一种装载方案。     例如:当 n = 3, capacity1 = capacity2= 50,
贪心算法通过一系列的选择来得到问题的解。它所做的每一个选择都是当前状态下局部最好选择。从许多的贪心算法求解的问题可以看到可用贪心算法求解的问题一般具有两个重要的性质:贪心选择性质和最优子结构性质。1、贪心选择性质贪心选择性质是 指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。与动态规划算法的不同之处是贪心算法只依赖在当前状态下做出最优选择,然后再去解做出这个选择后产生的相应的
概念: 当一个问题具有最优子结构性质时,可用动态规划算法,有时会有更简单有效的算法,那就是贪心算法,贪心算法是通过一系列的选择来得到问题的解,贪心算法并不从整体最优上加以考虑,所做的选择只是在某种意义上的局部最优解。但对范围相当广的许多问题能产生整体最优解。在一些情况下,即使贪心算法不能得到整体最优
原创 2022-05-27 22:46:20
435阅读
/*-----------------------------------------------------给出n个物体,第i个物体的重量为wi。选择尽量多的物体,使得总重量不超过C。 输入:n和C以及n个整数表示的wi。 输出:按照输入物体的顺序输出n个用空格分隔的Y或N。Y表示该物体被选中,N...
转载 2014-07-28 16:32:00
138阅读
2评论
回溯法最优装载问题
原创 2022-07-07 10:08:18
136阅读
 问题描述如上,易知只要每一件都是挑选质量最小的,就可以实现贪心目标(载重量恒定的情况下)代码实现如下: 
一.问题描述n个集装箱装到2艘载重量分别为c1,c2的货轮,其中集装箱i的重量为wi且Σwi <= c1 + c2 , 1<=i<=n 问题要求找到一个合理的装载方案可将这n个货箱装上这2艘轮船。例如 当n=3, c1=c2=50, w=[10, 40, 40], 可将货箱1和2装到第一艘船上;货箱3装到第二艘船上; 若w=[20, 40, 40], 则无法将全部货箱装船.二.
描述:有一批集装箱要装上一艘载重量为C的轮船。其中集装箱i的重量为wi。最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。 贪心算法之最优装载 第一种方法(容器) 第二种方法
原创 2021-10-22 11:00:18
1207阅读
 问题描述如上,易知只要每一件都是挑选质量最小的,就可以实现贪心目标(载重量恒定的情况下)代码实现如下: 
原创 2022-03-11 09:59:11
113阅读
贪心算法思想:不从整体最优上加以考虑,它所做出的选择只是在某种意义上的局部最优选择,当然希望贪心算法得到的最终结果也是整体最优的;贪心算法性质:指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到;最优装载问题(1)问题描述:有一批集装箱要装上一艘载重量为 tatol 的轮船,其中集装箱 index 的重量为 weight。最优装载问题要求在装载体积不受限制的情况下,将尽可能多的集
采用优先选取重量轻的集装箱装船的贪心思路。#include <bits/stdc++.h>using namespace ...
原创 2022-12-28 15:33:30
96阅读
问题描述:有一批共n个集装箱要装上两艘载重量分别为c1和c2的轮船,其中集装箱i的重量为wi,且,装载问题要求确定是否有一个合理的装载方案可将这些集装箱装上这两艘轮船。如果有,找出一种装载方案。例如:当n=3,c1=c2=50,且w=[10,40,40]时,则可以将集装箱1和2装到第一艘轮船上,而将集装箱3装到第二艘轮船上;如果w=[20,40,40],则无法将这3个集装箱都装上轮船。基本思路:&
  • 1
  • 2
  • 3
  • 4
  • 5