拓扑排序
Kahn算法
找出图中任意入度为
int a[N],into[N],ma[N][N],n;//a为排序好的拓扑序列,into记录入度,ma存图 bool topsort(){ for(int i=1;i<=n;i++){ int j=1; while((!into[j])&&j<=n) j++;//寻找入度为0的点 if(j>n) return false;//如果没有入度为0的点,返回不成立 else{ a[i]=j; into[j]=INF;//删除该点 for(int k=1;k<=n;k++) if(ma[j][k]) into[k]--;//将相连的点的入度全部减一 } } return true; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】