The-Design-and-Analysis-of-Algorithms 作业10

本文介绍了一个关于装载问题的定理及其证明过程,并提供了一个实例分析。装载问题要求找到一种装载方式,使第一条船的装载量与给定容量的差值最小。通过不断交换集装箱的方法可以找到最优解。

1. 问题

在这里插入图片描述

2. 解析

定理:如果装载问题有解,则存在一个使得第一条船装载量与c1的差达到最小的解。
证明:
将第一艘船装入尽可能重的集装箱
当剩余集装箱重量小于第二艘船时,那么能够装下所有集装箱。
通过不断交换集装箱,直到找到一个使得第一条船装载量与 c1的差达到最小的解。
在这里插入图片描述

  1. 设计
    在这里插入图片描述

实例:
在这里插入图片描述

  1. 分析
    最坏情况要遍历图中所有结点,算法的时间复杂度为O(2n)。
  2. 源码
    https://github.com/LiChunning/The-Design-and-Analysis-of-Algorithms/blob/main/%E8%A3%85%E8%BD%BD%E9%97%AE%E9%A2%98.cpp
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值