我可以在图表的边缘插入数据吗?


SHOU宅大可爱
2025-03-18 05:48:35 (4天前)
  1. 我可以把数据放在


边缘
</跨度>
相邻列表图?

我的要求有以下几点:

(A)所需信息:
A-1。每个城市的旅游时间有100个城市
A2。价格 (运输)的网站之间的300运输是边缘。

(A.需要的信息)说运输应该有自己的价格
(C)说

边缘
</跨度>
有距离。

这就是为什么我对将数据放在 上的方式感到好奇

2 条回复
  1. 0# Just do it | 2019-08-31 10-32



    是的,您可以将数据与图形边缘相关联,并且它与您表示图形的方式无关。想想你将如何解决这个问题

    最短路径问题

    ;你显然需要知道图中两个节点之间的距离,而这个信息是连接它们的边缘的属性,而不是单个节点。



    在您的示例中,您可以:




    1. // create reciprocal links between nodes ‘src’ and ‘dst’,
      // containing the ‘distance’ information
      void graph_link_two_cities(struct Graph graph, int src, int dst, int distance)
      {
      {
      struct Edge
      head = graph->array[src].head;
      struct Edge* node = { .id = dst, .distance = length, .next = head });
      graph->edges[src].head = node;
      }

    2. {
    3.     struct Edge* head = graph->array[dst].head; 
    4.     struct Edge* node = { .id = src, .distance = length, .next = head });
    5.     graph->edges[dst].head = node;
    6. }
    7. }

    8. </code>


    使用邻接矩阵,您只需存储它们之间的距离

    src



    dst



    matrix[src][dst]



登录 后才能参与评论