树的直径证明

树的直径又称树上最长的路,结论为从某一点搜出最长的路径一定是s或t点,再用一次搜索就会找出树的直径

只要运用的就是反证法。

现在假设s到t是树的直径。

取某一点u,搜到的最远点为x;

1. u在s-t路径上:

如果u在直径上,那么下一步肯定会搜到直径的某点,(如果,不是直径的某点的话,那么,dis(u,x)+dis(s+x)就会大于dis(s,t)这样就会与假设相违背)成立。

2. u不在s-t路径上:

(1)u最后走到了是s-t这条路上,那么x最后为s或t的某一点,则直径为dis(u,x)+dis(x,s);

(2)u走到最远点的路径u-T与s-t无交点,则dis(u-T) >dis(u,X)+dis(X,t);显然,如果这个式子成立,

    则dis(u,T)+dis(s,X)+dis(u,X)>dis(s,X)+dis(X,t)=dis(s,t)最长路不是s-t矛盾;

 

posted @ 2016-10-10 10:33  勿忘初心0924  阅读(282)  评论(0编辑  收藏  举报