




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 概要 树的划分问题:将给定的一棵树划分为若干棵子树,使其能够满足一定的条件或是使得某个特定的函数达到最值。 树的最大最小划分问题。问题的提出草莓(noi2003 day 2-2 test6test9)题目大意: 给出一片草莓中每个草莓的重量以及它们的连接情况。令sum(i)表示第i块草莓田中所有草莓重量的和(1ik) , x = min sum(i) | 1ik 。你的任务就是要把一块草莓田分割成k块,且分割方案需要满足如下的条件: 每一块中的草莓必然是直接或者间接的和其他草莓相连接的; 这种分割方案所对应的x尽可能的大。 最后输出你的分割方案和结果。问题的提出 这是一道提交答案式的题目,其
2、中 test6test9 所给的图是一棵树,若不考虑具体的数据情况,我们可以将原问题抽象成如下问题: 给定一棵树以及树中每个顶点的一个非负权值,将树划分为k棵子树,定义:sum(i)表示第i棵子树中所有顶点权值的和,x=min sum(i)|1i k ,请求出x的最大值并输出一种划分方案。 我们把它称作树的最大最小划分问题。算法1:问题转化 考虑新问题: 对于一个确定的下界,最多可将树划分为多少棵子树,使得每棵子树的权值和都不小于此下界?新问题 二分法原问题解决新问题 新问题的解决只需要一个以贪心思想为基础的扫描算法。 393531264下界:1035124173106解决原问题 时间复杂度:
3、o(n) 已是理论下界 通过二分法来找到最大的下界x,使得划分的最大子树数目不小于k,x即为原问题的解。小结 解决问题的途径:问题转化 实现简单,运行效果好 运行时间依赖于节点的权值范围 若节点的权值范围很大或者权值是小数甚至无理数 时间复杂度不依赖于节点权值范围的算法?新思路: 割 一条边所连接的两个顶点分属不同的子树,则称在这条边上有一个“割”。 每个割对应一棵子树 + 根节点所在子树 划分k棵子树 将k-1个割分配到k-1个不同的边上新思路: 移动 一次移动被定义为将一个割从一条边移到一条与它相邻的边上,并且保证新的边一定是在原来那条边的下一层。 新算法:初始状态 + 移动规则关键点初始
4、状态最简单的方法: 任选一个度为1的顶点为根 将所有割都放在与根相连的唯一的边上可以由初始状态到达任何一个目标状态关键: 移动规则的制定移动规则依据的还是一种贪心的思想: 1.计算出当前状态下子树权值和的最小值 wmin 2.考虑所有可能的移动,找出能使移动后的割所对应的子树权值和wnow最大的那种移动 3.如果wnow wmin,那么进行这步移动,并转到步骤1 4.算法结束,wmin 即为所求的最大的最小值,当前划分即为一种最优划分 证明?例子79139128当前划分一种最优划分“上方” 当前划分总是在某个最优划分的“上方” “上方”的定义 划分a在划分a的上方,也就是存在一种a的割和a的割
5、的一一对应,使得每个a的割都在它所对应的a的割的上方。更加实用的性质 ?定义:部分子树 若一棵树t的子树t包含了顶点v连同v的某一个儿子以及这个儿子的所有后继,则称t是t在顶点v处的一棵部分子树。与v相连的唯一一条边被称为t的初始边。v初始边重要性质 划分a在划分a上方aa#(a) #(a)证明算法(1) 在初始状态时的划分a是在任何一个最优划分q的上方的。(2) 若存在一个最优划分q使得当前的划分a是在q的上方,且a和q不相等,则算法一定不会终止。(3) 设a在q的上方且a不等于q,在算法进行一步后a变为a,我们一定还能找到一个最优划分q使得a在q上方。(4) 算法会在有限步内终止,算法终止
6、时的划分一定是一个最优划分。一些说明 字母a表示由算法进行而得到的划分。 字母q表示一个最优划分,即使得最小子树最大的划分。 用wmin(a)表示在划分a下的最小子树的权值和 对于任意划分a,wmin(a) wmin(q) 证明算法(2) (2) 若存在一个最优划分q使得当前的划分a是在q的上方,且a和q不相等,则算法一定不会终止。当前划分a最优划分qcscc wmin(q) wmin(q) wmin(a)证明算法(3) (3) 设a在q的上方且a不等于q,在算法进行一步后a变为a,我们一定还能找到一个最优划分q使得a在q上方。ccsse1e2vwmin(q)当前划分a最优划分q情况1:对于在
7、顶点v处的每一棵部分子树t,都有#(a)=#(q)。 证明算法(3)情况2:存在在顶点v处的某棵子树t,使得#(a)#(q)。cce1e2vsswmin(q)wmin(q)wmin(q)e3当前划分a最优划分q呼,终于证完了 小结 新思想,新方向:割,移动 贯穿整个证明过程的思想:上方当前划分 最优划分 上方 “序”的概念 算法的扩展 权函数的扩展 子树中所有节点的权值之和 子树中节点权值最大值? 子树半径?(树的p中心问题) ? 权函数的必要条件: 若t是t的任意一棵子树,则w(t) w(t),其中w(t)表示树t的权函数 总结 两个算法,它们通过不同的方式思考问题,从而得到了不同的解法 算法1 问题转化 二分法 算法2 割,移动 “上方”的概念总结从不同的角度看问题深入思考问题深刻了解问题本质 设计出符合题目特
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 批后公告管理办法
- 拱棚芦笋管理办法
- 快递员工管理办法
- 扬州仓库管理办法
- 新进原料管理办法
- 数据质量管理办法
- 房产管理办法公司
- 无证煤场管理办法
- 投资总额管理办法
- 抢修费用管理办法
- MMG-23600-大型矿用卡车市场调研报告全球行业规模展望2024-2030 Sample-ntt
- DZ/T 0430-2023 固体矿产资源储量核实报告编写规范(正式版)
- 圆梦奖学金申请书
- (高清版)WST 442-2024 临床实验室生物安全指南
- 新概念第二册课文和单词
- JJG 393-2018便携式X、γ辐射周围剂量当量(率)仪和监测仪
- 第六章-数据采集技术课件
- 医药配送员述职报告
- 成人住院患者跌倒评估与预防(团体标准)解读
- 消防工程施工进度计划横道图+进度网络图
- 机车司机岗位责任
评论
0/150
提交评论