个人随笔
目录
图的存储结构之边集数组(Java实现)
2020-04-22 23:19:57

边集数组是由两个一维数组构成。一个是存储顶点的信息;另一个是存储边的信息。
这个边数组每个数据元素由一条边的起点下标(begin)、终点下标(end)和权(weight)组成。

如上图所示,边集数组关注的是边的集合,在边集数组中要查找一个顶点的度需要扫描整个边数组,效率并不高。
因此它更适合对边依次进行处理的操作,而不适合对顶点相关的操作。

java实现

  1. public class G2 {
  2. String[] vertexs;
  3. List<Edge> edges;
  4. public G2(String[] vertexs, List<Edge> edges) {
  5. super();
  6. this.vertexs = vertexs;
  7. this.edges = edges;
  8. }
  9. public static void main(String[] args) {
  10. String[] vertexs = new String[]{"V0","V1","V2","V3"};
  11. Edge edge1 = new Edge(0, 1, 5);
  12. Edge edge2 = new Edge(2, 3, 7);
  13. Edge edge3 = new Edge(1, 3, 8);
  14. Edge edge4 = new Edge(2, 1, 54);
  15. List<Edge> edges = new ArrayList<Edge>();
  16. edges.add(edge1);
  17. edges.add(edge2);
  18. edges.add(edge3);
  19. edges.add(edge4);
  20. G2 g2 = new G2(vertexs, edges);
  21. }
  22. }
  23. class Edge{
  24. int begin;//开始下标
  25. int end;//结束下标
  26. int weight;//权重
  27. public Edge(int begin, int end, int weight) {
  28. this.begin = begin;
  29. this.end = end;
  30. this.weight = weight;
  31. }
  32. }

最简单最没有实现难度的一个了!

 595

啊!这个可能是世界上最丑的留言输入框功能~


当然,也是最丑的留言列表

有疑问发邮件到 : suibibk@qq.com 侵权立删
Copyright : 个人随笔   备案号 : 粤ICP备18099399号-2