数据结构——图(概念,存储,遍历)

1、图的概念

        图由点集合和边集合组成,记做G=(V,E),其中点集合不能为空且应该有穷,边集合可以为空。有关图的部分概念如下:
   1)、有向图:边有方向,用<Vi,Vj>表示;无向图:边没有方向,用(Vi,Vj)表示
   2)、完全图:每两个顶点之间都有连线,有向完全图的边有n(n+1)个;无向完全图有n(n+1)/2个边。
   3)、路径和回路:路径是指从一个点到另外一个点走过的路径和长度;回路是指从一个点出发再回到一个点的路径;简单回路是指中间没有重复经过的点。
   4)、连通图和连通分量:连通图是指任意两个点之间可以到达;在有向图中要求更严格,任意两点可以相互到达。连通分量是指把连通图分解成子连通图,子连通图的称呼。
   5)、网络:边带有权值的图。

2、存储结构

  邻接矩阵:反映的是顶点间的相邻关系。一个n行n列的矩阵表示由n个顶点的图,如果(i,j)或者<i,j>属于边集合,则矩阵中第i行j列的值为1,否则为0。
   从邻接矩阵的定义可以推断,无向图的邻接矩阵是对称的;有向图的邻接矩阵是非对称的。对于无向图而言,邻接矩阵第i行的和为邻接顶点i的度;对于有向图,邻接矩阵第i行表示的和是顶点i的出度,第i列的和表示顶点i的入度。
   邻接表:为图的每个顶点建立一个链表,第i个链表中的结点表示与顶点i相关的边。

3、图的遍历

深度优先:
    1.首先访问出发顶点V
    2. 依次从V出发搜索V的每个邻接点W;
    3. 若W未访问过,则从该点出发继续深度优先遍历;它类似于树的前序遍历。
广度优先:
    1.首先访问出发顶点V
    2.然后访问与顶点V邻接的全部未访问顶点w、X、Y…
    3.然后再依次访问W、X、Y…邻接的未访问的顶点;
参考文献:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

i胡说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值