注:这一篇是上一篇《C语言算法1.3:连通问题高级改进版【视频解析】》的改进版,推荐先阅读上一篇再阅读本篇。
!!!喜欢看视频的朋友请点击这里(里面有4个版本的对比总结)!!!
一、来源
来自《算法:C语言实现(第1-4部分)第3版》书的程序1.4。
二、两个版本的区别
1.3版本里,如果两个节点已经连通,则不做处理。
1.4版本里,如果两个节点已经连通,还是会做处理,把树的深度变小,这样往上找根节点时要查找的次数就少了。
三、性能测试结果
节点数量 | 1.3版本耗时(毫秒) | 1.4版本耗时(毫秒) | 耗时比 |
---|---|---|---|
100万 | 32 | 19 | 1.68 |
1000万 | 257 | 134 | 1.91 |
- 节点数量越多,性能提升越高。
- 提升的上限是2倍。
四、源码
源文件比较多,就不在文章里贴了,链接在这里:github、gitee
五、过程示意图
全文完