zoukankan      html  css  js  c++  java
  • 邻接矩阵和邻接表的比较

    转载自:http://blog.sina.com.cn/s/blog_54b6680e010004rv.html

    对于一个具有n个顶点e条边的无向图

    它的邻接表表示有n个顶点表结点2e个边表结点

    对于一个具有n个顶点e条边的有向图

    它的邻接表表示有n个顶点表结点e个边表结点

    如果图中边的数目远远小于n2称作稀疏图,这是用邻接表表示比用邻接矩阵表示节省空间;

    如果图中边的数目接近于n2,对于无向图接近于n*(n-1)称作稠密图,考虑到邻接表中要附加链域,采用邻接矩阵表示法为宜。

     

    在无向图中求顶点的度,使用邻接矩阵及邻接表法都很容易做到

    邻接矩阵中第i(或第i)上非0元素的个数就是顶点Vi的度

    在邻接表中第i个边表的结点个数就是顶点Vi的度

    在有向图中求顶点的度采用邻接矩阵比采用邻接表表示更方便

    邻接矩阵中第i行非零元素的个数是顶点Vi的入度

    邻接矩阵中第i列非零元素的个数是顶点Vi的出度

    二者之和就是定点Vi的度数

    邻接表表示中第i个边表上的结点个数就是顶点Vi的出度,求入度较困难,需遍历个顶点的边表

    逆邻接表表示中第i个边表上的结点个数就是顶点Vi的入度,求出度较困难,需遍历个顶点的边表

    在邻接矩阵中求边的数目必须检测整个矩阵,所消耗的时间是O(n)

    在邻接表中求边的个数,只要对每个边表计数即可求得所消耗的时间是O(n+e)
  • 相关阅读:
    共享内存基本操作
    mmap 操作
    busybox 安装问题解决
    ubuntu apt-get failed
    live555 学习资料
    循环队列实现
    socket 聊天室实现
    socket 映射服务器--(可处理多客户端连接(fork),显示退出信息)
    socket 映射服务器程序
    vector和list插入性能对比
  • 原文地址:https://www.cnblogs.com/icode-girl/p/4685021.html
Copyright © 2011-2022 走看看