zoukankan      html  css  js  c++  java
  • 【09-06】数据结构学习笔记-图篇00

    图的存储结构

    • 邻接矩阵(数组表达)
    • 邻接表(链表结构,表达有向图)
    • 十字链表(链表结构,表达有向图)
    • 邻接多重表(表达无向图)

    图的结构

    边|弧

    • 弧尾
    • 弧头
    • 权重

    邻接矩阵(二维数组可以表达)

    • 顶点索引
    • 顶点数据
    struct Node{
        顶点索引;
        顶点数据;
    }
    
    struct Map{
        顶点数据;
        邻接矩阵;
    }
    
    

    邻接表(链式存储,记录出弧链表)

    • 顶点表示
      1. 顶点索引
      2. 出弧链表头指针
      3. 顶点数据
    • 弧的表示方法
      1. 弧头顶点索引
      2. 下一条弧指针
      3. 弧数据
    struct Node{
        顶点索引;
        该节点弧链表的头节点;
        顶点数据;
    }
    
    struct Arc{
        指向的顶点索引;
        指向下一条弧的指针;
        弧信息;
    }
    
    struct Map{
     顶点数组;
    }
    
    

    逆邻接表(记录入弧链表)

    • 顶点表示
      1. 顶点索引
      2. 入弧链表头指针
      3. 顶点数据
    • 弧的表示方法
      1. 弧尾顶点索引
      2. 下一条弧指针
      3. 弧数据

    十字链表

    • 顶点表示
      1. 顶点索引
      2. 顶点数据
      3. 以该丁顶点为弧尾的弧节点指针
      4. 以该节点为弧头的弧节点指针
    • 弧的表示
      1. 弧尾顶点索引
      2. 弧头顶点索引
      3. 弧尾相同的下一条弧的指针
      4. 弧头相同的下一条弧的指针
      5. 弧的数据
  • 相关阅读:
    什么是 CLR
    常用的数据结构以及算法
    Array和ArrayList的异同点
    什么是CMS?
    .NET Framework3.0答疑
    C#中的委托
    C#速成之三(Quick C#)
    C#速成之五(Quick C#)
    C#速成之四(Quick C#)
    类,对象,封装,接口,多态,继承
  • 原文地址:https://www.cnblogs.com/achievec/p/5847566.html
Copyright © 2011-2022 走看看