尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

拓扑排序 -2025/11/22

拓扑排序 -2025/11/22
📅 发布时间:2026/6/19 16:35:10

拓扑排序

#include <bits/stdc++.h>
using namespace std;const int N = 1e5 + 10;int e[N], ne[N], h[N], idx;
int n, m, d[N];
int q[N];void add(int a,int b){e[idx] = b, ne[idx] = h[a], h[a] = idx ++; 
}bool top_sort(){int hh = 0, tt = -1;for(int i = 1;i <= n; i++) {if(d[i] == 0) q[++ tt] = i;}while(hh <= tt){auto t = q[hh ++];for(int i = h[t]; i != -1; i = ne[i]){int j = e[i];d[j] --;if(d[j] == 0) q[++ tt] = j;}}return tt == n - 1;
}int main(){// 单链表, h初始化为-1, 用于存储图时, 对于每一个头节点都要初始化为-1, 要不然会超时memset(h, -1 , sizeof h);cin >> n >> m;for(int i = 1; i <= m; i++){int a,b;cin >> a >> b;add(a , b);d[b] ++;}if(top_sort()){for(int i = 0;i < n; i++) cout << q[i] << " ";}else cout << "-1" << "\n";return 0;
}

相关新闻

  • -2025/11/20
  • Scrum冲刺阶段 Day Five
  • AI浪潮下的机遇与挑战:从技术突破到就业现实

最新新闻

  • 全国学历提升继续教育学习体验实录
  • 验证码绕过实战:从Pikachu靶场剖析客户端与服务端漏洞原理
  • Mission Planner终极指南:5步掌握开源无人机地面站专业飞行控制
  • Gemini大模型系列技术解析与真实能力边界
  • 修复kkFileView XSS漏洞与POI文件预览兼容性问题实战
  • 弱监督学习与概率提示技术在3D目标检测中的应用

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号