《算法设计》三、图

 

对DAG进行拓扑排序的朴素算法:

上面算法简单来说就是每个节点维护一个入度数,把入度数为0的节点加入集合S,每次从S中选取节点删除,并更新相应节点的入度,把入度变为0的节点加入S。

 

 

证明:反证法。如果G不是连通图,且有k个连通子图,则k>1。由于每个点都连着另外n/2个点,那么这个点和另外n/2至少算一个连通图,也就是说G中一个连通图中点的数目至少为1+n/2。那么G中至少有(1+n/2)k个点,所以(1+n/2)k<=n,即k<=1,这与k>1矛盾。

 

问题:下列命题是否成立?

 

posted @   Shiyu_Huang  阅读(234)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示