数据结构--图的存储邻接表法

数据结构–图的存储邻接表法

邻接矩阵:
数组实现的顺序存储,空间复杂度高,不适合存储稀疏图

邻接表:
顺序+链式存储

邻接表法(顺序+链式存储)

//边/弧
typedef struct ArcNode
{int adjvex; //边/弧指向哪个结点struct ArcNode *next; //指向下一条弧的指针//Infotype info; //边的权值
}ArcNode;
//顶点
typedef struct VNode
{VertexType data; //顶点信息ArcNode *first; //第一条边/弧
} VNode, AdjList[MaxVerTexNum];
//用邻接表存储图
typedef struct 
{AdjList vertices;int vexnum, arcnum;
} ALGraph;

无向图:
边结点的数量是 2|E|,
整体空间复杂度为 O(|V| + 2|E|)

有向图:
边结点的数量是 |E|,
整体空间复杂度为 O(|V| + |E|)

图的邻接表表示方式并不唯一 \color{red}图的邻接表表示方式并不唯一 图的邻接表表示方式并不唯一

知识回顾与重要考点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/28963.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

硬件学习笔记(器件篇)—— 铝电解电容(二)

文章目录 铝电解电容的基本参数1.容量和耐压2.封装3.损耗角:损耗角正切值3.工作温度与使用寿命(简述,后面会单独讲)4.漏电流5.最大纹波电流(是一个有效值rms) 结合绿宝石的一个手册分析1.使用温度范围2.电容…

MySQL-多表设计-一对多

多表的设计-概述 项目开发中,在进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,由于业务之间相互关联,所以各个表结构之间也存在着各种联系,基本上分为三种: 一…

【Hydro】一个简单的HBV水文模型产流Python实现

说明 HBV模型包括一系列自由参数,其值可以通过率定得到。同时也包括一些描述流域和气候特征的参数,它们的值在模型率定是假定不变。子流域的划分使得在一个子流域中可能有很多参数值。虽然在大多数应用中,各子流域之间参数值只有很小的变化&a…

学生宿舍智能电表限电原理

学生宿舍智能电表限电石家庄光大远通电气有限公司生产销售系列学生公寓智能管理模块、学生公寓智能控电水电联控系统及相关公寓安全用电产品,产品销往全国各地,广泛应用于各种学校公寓物业及商业地产公司,为企事业单位物业管理提供便捷的水电…

Go语言之结构体

在实际开发中,我们可以将一组类型不同的、但是用来描述同一件事物的变量放到结构体中。例如,在校学生有姓名、年龄、身高、成绩等属性,学了结构体后,我们就不需要再定义多个变量了,将它们都放到结构体中即可。 在Go语言…

uni-app:scroll-view滚动盒子,实现横(纵)向滚动条

参照&#xff1a;scroll-view | uni-app官网 (dcloud.net.cn) 样式&#xff1a; 代码&#xff1a; <template><view class"box"><scroll-view scroll-x"true" class"scroll"><view class"box1"> <view c…

MySQL八股学习记录6-日志from小林coding

MySQL八股学习记录6-日志from小林coding MySQL日志分类undo logBuffer Poolredo logbinlogredo log 和undo log有什么区别主从复制是如何实现update语句执行过程为什么需要两阶段提交 MySQL日志分类 undo log:InnoDB存储引擎层生成的日志,实现事务中的原子性,主要用于事务回滚…

Linux进程控制(二)---进程等待

目录 什么是进程等待 为什么要进行进程等待&#xff1f; wait() waitpid() status的使用★ options★ 问题&#xff1a;既然进程具有独立性&#xff0c;进程退出码不也是子进程数据吗&#xff0c;父进程凭什么拿到呢&#xff1f;wait/waitpid究竟做了什么呢&#xff1f; …

Spring Cloud Hystrix简单实用

文章目录 一、简介二、快速开始1、pom依赖2、启动类注解3、服务降级配置HystrixCommand4、配置熔断策略5、测试 三、原理分析四、实际使用 一、简介 Hystrix&#xff0c;英文意思是豪猪&#xff0c;全身是刺&#xff0c;刺是一种保护机制。Hystrix也是Netflflix公司的一款组件。…

Kotlin获取Fragment中的组件

左边和右边分别是两个不同的Fragment&#xff0c;左边的Fragment中右一个Button组件&#xff0c;目标是想要获取这个组件的id&#xff0c;以便进行将右边的Fragment更改成另一个Fragmeent的操作。 left_fragment.xml <?xml version"1.0" encoding"utf-8&qu…

玩玩两个简单的python的web框架 flask、fastapi

IDEA连接远程解释器&#xff0c;本地代码编辑无法代码提示 一、Flask入门使用 官网 其它参考 注意 1.这里使用linux 192.168.72.126上远程解释器,需要/usr/bin/pip3 install flask&#xff0c;host参数不要使用localhost/127.0.0.1,即只监听本地的访问&#xff0c;会导致wind…

手机定屏死机问题操作指南

和你一起终身学习&#xff0c;这里是程序员Android 经典好文推荐&#xff0c;通过阅读本文&#xff0c;您将收获以下知识点: 一、定屏死机问题抓取 Log 要求二、 复现定屏死机问题后做什么三、检查adb是否可连的方法四、连接adb 抓取以下Log五、如果adb不可连&#xff0c;执行下…