博客
关于我
链式前向星(待更新)
阅读量:319 次
发布时间:2019-03-04

本文共 757 字,大约阅读时间需要 2 分钟。

#include 
using namespace std;const int maxn = 1005;int n, m, cnt;struct Edge { int to, w, next;} edge[maxn];int head[maxn];void init() { for(int i = 0; i <= n; i++) head[i] = -1;}void add(int u, int v, int w) { edge[cnt].to = v; edge[cnt].w = w; edge[cnt].next = head[u]; head[u] = cnt++;}int main() { cin >> n >> m; int u, v, w; init(); for(int i = 1; i <= m; i++) { cin >> u >> v >> w; add(u, v, w); } //遍历 for(int i = 1; i <= n; i++) { for(int j = head[i]; j != -1; j = edge[j].next) { cout << edge[j].to << " " << edge[j].w << endl; } } return 0;}

以上代码实现了一个图的表示方法,主要包括以下功能:

  • 使用边列表表示图
  • 通过head数组记录每个节点的入边
  • 通过add函数添加边
  • 通过遍历输出图的信息
  • 代码结构清晰,适合用于处理图的相关问题。

    转载地址:http://nirq.baihongyu.com/

    你可能感兴趣的文章
    NodeJS、NPM安装配置步骤(windows版本)
    查看>>
    NodeJS、NPM安装配置步骤(windows版本)
    查看>>
    nodejs与javascript中的aes加密
    查看>>
    nodejs中Express 路由统一设置缓存的小技巧
    查看>>
    nodejs中express的使用
    查看>>
    Nodejs中的fs模块的使用
    查看>>
    NodeJS使用淘宝npm镜像站的各种姿势
    查看>>
    nodejs包管理工具对比:npm、Yarn、cnpm、npx
    查看>>
    NodeJs单元测试之 API性能测试
    查看>>
    nodejs图片转换字节保存
    查看>>
    nodejs在Liunx上的部署生产方式-PM2
    查看>>
    nodejs字符与字节之间的转换
    查看>>
    NodeJs学习笔记001--npm换源
    查看>>
    NodeJs学习笔记002--npm常用命令详解
    查看>>
    nodejs学习笔记一——nodejs安装
    查看>>
    NodeJS实现跨域的方法( 4种 )
    查看>>
    nodejs封装http请求
    查看>>
    nodejs常用组件
    查看>>
    nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
    查看>>
    Nodejs异步回调的处理方法总结
    查看>>