博客
关于我
链式前向星(待更新)
阅读量: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/

    你可能感兴趣的文章
    Netty核心模块组件
    查看>>
    Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
    查看>>
    Netty源码—2.Reactor线程模型一
    查看>>
    Netty源码—4.客户端接入流程一
    查看>>
    Netty源码—4.客户端接入流程二
    查看>>
    Netty源码—5.Pipeline和Handler一
    查看>>
    Netty源码—6.ByteBuf原理二
    查看>>
    Netty源码—7.ByteBuf原理三
    查看>>
    Netty源码—7.ByteBuf原理四
    查看>>
    Netty源码—8.编解码原理二
    查看>>
    Netty源码解读
    查看>>
    Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
    查看>>
    Netty相关
    查看>>
    Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
    查看>>
    Network Sniffer and Connection Analyzer
    查看>>
    NetworkX系列教程(11)-graph和其他数据格式转换
    查看>>
    Networkx读取军械调查-ITN综合传输网络?/读取GML文件
    查看>>
    Net与Flex入门
    查看>>
    net包之IPConn
    查看>>
    NFinal学习笔记 02—NFinalBuild
    查看>>