• C#的Dictionary竟然还可以这样存储二维表
  • 发布于 1周前
  • 43 热度
    0 评论
  • 且醉
  • 0 粉丝 33 篇博客
  •   

比如有如下这样的一张二维表,分表存储了各个节点间往来的时间和节点间距离,其中timings表示从一个节点到另一个节点所需的时间,distance表示从从一个节点到另一个节点距离,如果我们要用Dictionary来存储各个节点间的距离和时间该怎么做呢?

其实我们只要把节点间当成key,对应的时间和距离当成Value就可以了,用法类似如下:

        Dictionary<(string, string), (int timing, double distance)> distanceMatrix = new Dictionary<(string, string), (int timing, double distance)>();
        distanceMatrix.Add(("A", "B"), (10, 100));//A-B的时间和距离
        distanceMatrix.Add(("A", "C"), (11, 200));//A-C的时间和距离
        var time = distanceMatrix[("A", "B")].timing;//获取A-B的时间
        var distance = distanceMatrix[("A", "B")].distance;//获取A-B的距离
以上,简单记录一下。

用户评论