- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于删边最短路问题的若干见解
关于最短哥问题的若干见解马鑫宇1.不缩点的做法首先,对于一个图,我们从S点和T点进行两次搜索其到所有顶点的最短路,这些最短路定向后将构成两个定向树(不唯一时,任取其一),根分别为S(出发根)和T(到着根),我们称之为S树和T树。对于两个树,我们分别维护其顶点u的深度为dS[u]和dT[u]。最一开始没有任何删边之前就可以在最短路中用到的边称之为原边,其他边称之为备择边,视实际需要这两个词可能会有不同含义。现在我们只考虑S树而无视T树。那么显然每当删去S-T路之外的边时我们直接输出最短路即可,而删除S-T路上的边(i,j)(割边)时,T将被隔离在S树的某一个子树中。将(i,j)之外的S树上的边视为原边,不在S树上而能连接被割断的S树和T所在子树的边视为备择边。那么显然,删边后的最短路(备择最短路)一定过至少一条备择边。现在我们证明备择最短路一定只过一个备择边。定理1:对任意的割边(i,j),一定存在一条备择最短路(可能不唯一),使存在被割S树上的点u和T子树上的点v,使得备择最短路表示为如下结构:S出发经被割S树上的边到u,备择边(u,v),v出发经T树上的点到T;因而其长度为dS[u]+dT[v]+w[u,v](文中所有定理均假定备择最短路存在)证明:假设备择最短路为L,且长度小于所有满足上面性质的路。显见L中必定存在至少一条备择边(u,v),否则割边(i,j)将无法构成S-T割,因为只有T存在于被割S树中才有这种情况,而此时S树上S-T路未被(i,j)割断。我们取(u,v)为最后经过的备择边。现在取新路L2如下:S出发经原边到达u,(u,v),v出发经T树边到达T。显见L2路径长度不超过L,因为将L拆成3部分:S-u,u-v,v-T后,由最小树性质,其对应部分长度一定不小于L2对应部分的长度。注意因为v和T在被割后相同的S树的子树中,因此T树中v到T的路不会被(i,j)割断,如若不然则有下图:比较i,j,v三点间的最短路即可得出。L2违背了原假设,因此用反证法得出此定理的前半部分。后半部分显而易见。显见不在S树中的任何一条边都有机会称为备择边,于是我们得出枚举备择边的初步想法。取LCA为S树上的最近公共祖先,进一步地,我们得出以下定理:定理2:若(i,j)割的备择最短路经过备择边(u,v),则一定有(i,j)在LCA(u,T)到LCA(v,T)的原路上。证明:显见若不满足此条件,则(u,v)必然在割掉(i,j)之后的同一个子树上,因此不构成备择边。综上,我们得出以下算法(备择边-LCA-线段树法):1.构建S树,计算所有dS和dT,用Tarjan算法初始化LCA2.对S-T原最短路上的原边维护最小值线段树,将每一条不在S树上的无向边(u,v)拆成一对有向边计算其存在于备择最短路上时备择最短路的长度,更新区间[LCA(u,T),LCA(v,T)]3.对每次查询,返回其在线段树上对应点的值即是结果(此算法来自于[1],详细细节请参见[1])依据线段树的摊还复杂度,此算法时间复杂度预估为O((m+Q)lgm)如果同时考虑S树和T树,我们可以得出以下定理:定理3:对于每个(i,j)割边,一定存在这样一条备择最短路L,使存在顶点u(备择点)将L分成两个部分:S经S树边到u,和u经T树边到T。此路径长度为dS[u]+dT[u]。证明:显而易见,此处略去。定义LCAT和LCAS分别表示T树和S树的最近公共祖先。显见某点u成为备择点仅仅在[LCAT(S,u),LCAS(T,u)]区间内才有可能。因此我们得到以下算法(备择点-LCA-线段树法):1.构建S树和T树,计算所有dS和dT,用Tarjan算法初始化LCAS和LCAT2.对S-T原最短路上的原边维护最小值线段树,对每一个不在S-T原最短路上的点u,计算其在备择最短路上时的备择最短路长度,更新区间[LCAT(u,S),LCAS(u,T)]3.对每次查询,返回其在线段树上对应点的值即是结果(此算法来自于本人比赛后的随感)依据线段树的摊还复杂度,此算法时间复杂度预估为O((n+Q)lgm),但目测不如前一个算法高效。2.强连通缩点法这种做法是出题人Vani有约会本人给出的解答([4]),思路无误但是标程被质疑(见[2]),其本人认为的复杂度为O(nlgn),但根据其代码分析,应该为O(mlgm)。定义由S出发的SP图如下:有向边(i,j)属于SP当且仅当无向边(i,j)满足dS[i]+w[i,j]=dS[j]。易见此图为有向无环图。定义到达T的TP图如下:有向边(i,j)属于TP当且仅当无向边(i,j)满足dT[j]+w[i,j]=dT[i]。定义S到T的ST图如下:有向边(i,j)属于ST当且仅当无向边(i,j)满足dS[i]+w[i,j]+dT[j]=dS[T]。定理4:(1)ST图是
您可能关注的文档
最近下载
- 山东发展投资控股集团有限公司招聘笔试题库2025.pdf
- 桌面应急演练评估表.docx VIP
- 麻醉患者的护理(护理课件).ppt
- 广汽本田-奥德赛-保修手册-锐·畅享版-GHA6480BAC6AHEV-奥德赛(混动版)维修保修手册.pdf VIP
- (2025秋)人教版四年级英语上《Unit 2 My friends Part A 第1课时》PPT课件.pptx VIP
- (2025秋)人教版四年级英语上《Unit 2 My friends Part A 第2课时》PPT课件.pptx VIP
- Krashen第二语言习得理论与外语教学.pdf VIP
- (学习资料)大华DSS7016-客户端操作手册.pdf
- 2024年宁夏葡萄酒与防沙治沙职业技术学院辅导员招聘考试笔试模拟试题及答案解析.docx VIP
- 人事行政简历模板.docx VIP
文档评论(0)