当前位置: 首页 > news >正文

代码随想录算法训练营第四十三天 | 98. 所有可达路径

邻接矩阵easy

package main import ( "fmt" ) var res [][]int var path []int func dfs(graph [][]int, x, n int) { if x == n { tmp := make([]int, len(path)) copy(tmp, path) res = append(res, tmp) return } for i := 1; i <= n; i++ { if graph[x][i] == 1 { path = append(path, i) dfs(graph, i, n) path = path[:len(path)-1] } } } func main() { var n, m int fmt.Scanf("%d %d", &n, &m) graph := make([][]int, n+1) for i := range graph { graph[i] = make([]int, n+1) } for i := 0; i < m; i++ { var s, t int fmt.Scanf("%d %d", &s, &t) graph[s][t] = 1 } path = append(path, 1) dfs(graph, 1, n) if len(res) == 0 { fmt.Println(-1) } else { for _, pa := range res { for i := 0; i < len(pa)-1; i++ { fmt.Print(pa[i], " ") } fmt.Println(pa[len(pa)-1]) } } }

邻接表easy

package main import ( "fmt" ) var res [][]int var path []int func dfs(graph [][]int, x, n int) { if x == n { tmp := make([]int, len(path)) copy(tmp, path) res = append(res, tmp) return } for _, i := range graph[x] { path = append(path, i) dfs(graph, i, n) path = path[:len(path)-1] } } func main() { var n, m int fmt.Scanf("%d %d", &n, &m) graph := make([][]int, n+1) for i := 0; i < m; i++ { var s, t int fmt.Scanf("%d %d", &s, &t) graph[s] = append(graph[s], t) } path = append(path, 1) dfs(graph, 1, n) if len(res) == 0 { fmt.Println(-1) } else { for _, pa := range res { for i := 0; i < len(pa)-1; i++ { fmt.Print(pa[i], " ") } fmt.Println(pa[len(pa)-1]) } } }
http://www.cnnetsun.cn/news/26457.html

相关文章:

  • GBase 8a数据库集群硬件部署安装建议
  • GBase数据库护航国家管网SCADA系统四年无中断平稳运行
  • 一文搞定 AI 智能体架构设计的9大核心技术
  • 计算机毕业设计springboot基于JAVA的校园图书馆管理系统的设计与实现 基于Spring Boot框架的校园图书馆信息化管理系统开发与应用研究 利用Spring Boot与Java技术构建的高
  • 数据结构==LRU Cache ==
  • AMD ROCm平台上的YOLOv8目标检测:从入门到精通的5步优化指南
  • 如何让GPT-5.2成为你职场上的得力助手?这5大功能必看!
  • 如何快速掌握YOLOv12:实时目标检测的完整实践指南
  • PINNs-Torch:用PyTorch轻松实现物理信息神经网络
  • JavaScript学习笔记:5.函数
  • Apache Kvrocks数据库部署实战:从零到一的完整搭建教程
  • 16、远程系统管理与安全防护指南
  • 施耐德BMENOC0321C:高性能模块化驱动控制器(增强通信版)
  • 金融人转AI:从入门到上手,我的“证书认证+技能”学习路线分享
  • 模块化多电平变换器MMC(20子模块、21电平,工作条件220kV(AC)/400kV(DC)...
  • 生态共舞!恭喜10家企业荣获“2025龙蜥社区最佳联合解决方案奖”
  • Java常见开发框架大比拼:Jeesite 、jeecgBoot、smartAdmin、ruoyi
  • IDEA(2020版)实现HttpServletRequest对象
  • 跨平台开发框架选型指南:Uniapp、React Native、Flutter
  • 数字孪生软件开发公司
  • springboot基于vue的校园报修管理系统设计与实现_t45k51ip
  • 嵌入式彩屏单色字体点阵的存储结构设计
  • 《Medical Vision Generalist: Unifying Medical Imaging Tasks in Context》(医学视觉通才:在上下文中统一医学成像任务)的
  • 西安电子科技大学专属信纸模板:3分钟打造专业学术形象
  • 【每日一题】PCIe答疑 - 接大量 GPU 时主板不认设备或无法启动和MMIO的可能关系?
  • 富有的哈佛人 —— 储蓄:财富积累的第一块基石
  • 终极指南:快速掌握eventpp事件处理库的8种集成方法
  • 光刻胶用二正丁基胺增感剂:
  • Spyder vs Jupyter:科学计算效率大比拼
  • 【第八天】08c#今日小结