当前位置: 首页 > news >正文

图的基本介绍和表示方式

图的基本介绍

为什么要有图这个基本数据结构?

我们还学习过线性表(数组、队列、链表和栈)和树,但是我们可以发现,线性表局限于一个直接前驱(就是只能有唯一一个前面的结点)和一个直接后继的(唯一一个后面的结点)关系。树也只能有一个直接前驱也就是父节点。但是当我们如果想要表示多对多的关系时,前面所学习的数据结构就不能满足我们的需求了,这时候我们就需要图这个数据结构

图的举例说明

图是一种数据结构,其中结点可以具有零个或多个相邻的元素,两个结点之间的链接称为边。结点也可以称为顶点。
在这里插入图片描述

图的常用概念

顶点:图的每个结点就是顶点,例如:B

边(edge):图中两个顶点之间的线就叫做边,例如:A和B之间的连线

路径:路径就是从某个顶点到另一个顶点索要经过的所有顶点,例如从 D -> C 的路径有:①D->B->C ② D->A->B->C

无向图:就是两个相邻顶点间没有指明方向,例如:可以从B到A,也可以从A到B

在这里插入图片描述

有向图

在这里插入图片描述

带权图。例如下图中两顶点中的权就是两地的距离

在这里插入图片描述

图的表示方式

图的表示方式有两种:二维数组表示(邻接矩阵);链表表示(邻接表)

邻接矩阵

在这里插入图片描述

二位数组中的0表示的是两节点之间不能直接连通,1表示能直接连通

邻接表

邻接矩阵需要为每个顶点都分配n个边的空间,其实有很多边都是不存在,会造成空间的一定损失.

邻接表的实现只关心存在的边,不关心不存在的边。因此没有空间浪费,邻接表由数组+链表组成

在这里插入图片描述

相关文章:

图的基本介绍和表示方式

图的基本介绍 为什么要有图这个基本数据结构? 我们还学习过线性表(数组、队列、链表和栈)和树,但是我们可以发现,线性表局限于一个直接前驱(就是只能有唯一一个前面的结点)和一个直接后继的(…...

本周大新闻|传微软解散工业元宇宙团队,MIT研发垂直堆叠全彩Micro LED

本周大新闻,AR方面,消息称微软解散工业元宇宙团队;德国AR公司Gixel GmbH亮相;Brilliant推出单片式附加形态AR眼镜;MIT研发垂直堆叠全彩Micro LED;谷歌XR串流正式上线。VR方面,索尼发布了PS VR2的…...

SpringMVC:拦截器(12)

拦截器1. 拦截器概念2. 拦截器入门案例2.1 环境准备2.2 拦截器开发步骤1: 创建拦截器类步骤2: 配置拦截器类步骤3: SpringMVC添加SpringMvcSupport包扫描和interceptor包扫描步骤4: 简化SpringMvcSupport的编写5 测试3. 拦截器参数解析(了解)3.1 前置处理…...

计算机网络3:HTTP1.0和HTTP1.1的区别

目录1. HTTP是什么2.HTTP1.0和HTTP1.1的区别3.名词解释(1)If-Modified-Since(IMS)、Expires(2)If-None-Match,Etag(3)If-Unmodified-Since1. HTTP是什么 超文本传输协议…...

Urho3D 编辑器说明

Urho3D编辑器是一个脚本应用程序,可以与Urho3D播放器应用程序一起运行。要开始,请执行以下任意命令:(在bin目录中)Editor.bat、Editor.sh或Urho3DPlayer Scripts/Editor.as Urho3D播放器应用程序支持的所有命令行选项…...

C++类基础(十一)

运算符重载&#xff08;二&#xff09; ● 对称运算符通常定义为非成员函数以支持首个操作数的类型转换 struct Str {int val 0;Str(int input): val(input){}auto operator(Str x){std::cout << "auto operator(Str x)\n";return Str(val x.val);} }; int …...

Windows安装系列:SVN Server服务

一、下载与安装 1、下载VisualSVN-Server-5.1.1-x64.msi 地址&#xff1a;Download | VisualSVN Server 2、找到最新版本SVN 5.1.1&#xff0c;直接双击它&#xff0c;弹出如下安装界面 3、点击Next 4、勾选我接受&#xff0c; 点击"Next" 5、默认选项&#xff0c…...

快速傅里叶算法(FFT)快在哪里?

目录 前言 1、DFT算法 2、FFT算法 2.1 分类 2.2 以基2 DIT&#xff08;时间抽取&#xff09; FFT 算法为例 2.2.1 一次分解 2.2.2 多次分解 参考 前言 对信号分析的过程中&#xff0c;为了能换一个角度观察问题&#xff0c;很多时候需要把时域信号波形变换到频域进行分…...

利用Markdown写学术论文资料汇总贴

1是最详细的&#xff0c;重点看&#xff01; Markdown 写作&#xff0c;Pandoc 转换&#xff1a;我的纯文本学术写作流程 2补充一些细节&#xff0c;也可以看看。 用Markdown写作学术论文 3写得和上面差不多&#xff0c;如果上面两篇有什么问题还没解决&#xff0c;可以看看…...

MySQL 高级查询

目录1.左关联2.右关联3.子查询4.联合查询5.分组查询1.左关联 MySQL中的左关联&#xff08;Left Join&#xff09;是一种基于共同列的连接操作&#xff0c; 它将左侧表中的所有行与右侧表中匹配的行结合在一起&#xff0c; 如果右侧表中没有匹配的行&#xff0c;则结果集中右侧…...

JavaSE学习day4_01 循环for,while,do...while

1. 循环高级 1.1 无限循环 for、while、do...while都有无限循环的写法。 最为常用的是while格式的。 因为无限循环是不知道循环次数的&#xff0c;所以用while格式的 代码示例&#xff1a; while(true){} 1.2 跳转控制语句&#xff08;掌握&#xff09; 跳转控制语句&…...

C/C++中的static关键字

概述在C/C中都有static关键字的使用&#xff0c;可以分别修饰变量和函数&#xff0c;分为静态变量【静态成员】、静态成员函数。2. static用法概况静态变量的作用范围在一个文件内&#xff0c;程序开始时分配空间&#xff0c;结束时释放空间&#xff0c;默认初始化为0&#xff…...

67 自注意力【动手学深度学习v2】

67 自注意力【动手学深度学习v2】 深度学习学习笔记 学习视频&#xff1a;https://www.bilibili.com/video/BV19o4y1m7mo/?spm_id_fromautoNext&vd_source75dce036dc8244310435eaf03de4e330 给定长为n 的序列&#xff0c;每个xi为长为d的向量&#xff0c;自注意力将xi 既当…...

电子学会2022年12月青少年软件编程(图形化)等级考试试卷(二级)答案解析

青少年软件编程&#xff08;图形化&#xff09;等级考试试卷&#xff08;二级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1. 一个骰子&#xff0c;从3个不同角度看过去的点数如图所示&#xff0c;请问5的对面是什么点数&#xff1f;&#xff08; &#xff09; …...

关于链表中插入结点的操作……

服了&#xff0c;好久没敲链表了&#xff0c;这都忘了 newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur-…...

【项目精选】百货中心供应链管理系统

点击下载源码 近年来&#xff0c;随着计算机技术的发展&#xff0c;以及信息化时代下企业对效率的需求&#xff0c;计算机技术与通信技术已经被越来越多地应用到各行各业中去。百货中心作为物流产业链中重要的一环&#xff0c;为了应对新兴消费方式的冲击&#xff0c;从供货到销…...

Qt优秀开源项目之十六:SQLite数据库管理系统—SQLiteStudio

首先&#xff0c;感谢CSDN官方认可 SQLiteStudio是一款开源、跨平台&#xff08;Windows、Linux和MacOS&#xff09;的SQLite数据库管理系统。 github地址&#xff1a;https://github.com/pawelsalawa/sqlitestudio 官网&#xff1a;https://sqlitestudio.pl/ 特性很多&#xf…...

Python __doc__属性:查看文档

在使用 dir() 函数和 __all__ 变量的基础上&#xff0c;虽然我们能知晓指定模块&#xff08;或包&#xff09;中所有可用的成员&#xff08;变量、函数和类&#xff09;&#xff0c;比如&#xff1a;import string print(string.__all__)程序执行结果为&#xff1a;[ascii_lett…...

电子科技大学操作系统期末复习笔记(一):操作系统概述

目录 前言 操作系统概述 操作系统的目标与功能 操作系统的定义 目标 功能 操作系统的历史 单用户系统 简单批处理系统 多道批处理系统 分时系统 个人电脑 → 分布式系统 → 互联网时代 → 移动计算时代 → ...... 实时系统 操作系统的基本特征 并发 共享 虚拟…...

[实践篇]13.20 Qnx进程管理slm学习笔记(三)

【QNX Hypervisor 2.2用户手册】目录(完结) 4.2 模块 我们可以将组件组合成一个模块。模块中的进程可以组成一个子系统,也可以用于建立一组系统状态,例如基本操作和各种更高级别操作。注意,必须命名模块,以便可以在内部引用它们。而且每个模块必须描述成一个元素,形势如…...

使用Taotoken后模型API调用的延迟与稳定性观测体验分享

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用Taotoken后模型API调用的延迟与稳定性观测体验分享 作为一名日常需要与多种大模型API打交道的开发者&#xff0c;模型服务的稳…...

基于大语言模型与RAG的AI小说生成:从技术原理到工程实践

1. 项目概述&#xff1a;当AI开始“阅读”与“创作”最近在内容创作和小说爱好者圈子里&#xff0c;一个名为“auto-novel”的项目引起了我的注意。简单来说&#xff0c;这是一个利用人工智能技术&#xff0c;实现从“阅读”现有小说到“模仿创作”新内容的自动化工具。它的核心…...

工程师实战:Windows 8工作站部署、驱动危机与专业工具兼容性全解析

1. 从工程师视角看Windows 8的喧嚣与真实2013年&#xff0c;当Windows 8带着那个被称为“Metro”的崭新界面横空出世时&#xff0c;整个科技圈&#xff0c;尤其是我们这些整天和硬件、设计工具打交道的工程师群体&#xff0c;几乎炸开了锅。媒体上充斥着两极分化的评价&#xf…...

Anthropic新模型Mythos号称擅查漏洞,扫描curl代码却仅确认1个低危问题

Mythos高调亮相&#xff0c;扫描结果却令人意外 近期&#xff0c;Anthropic推出的AI安全分析模型Mythos引发广泛关注&#xff0c;该公司宣称其在发现源代码安全漏洞方面表现出色&#xff0c;甚至因此暂缓公开发布。然而&#xff0c;当Mythos扫描全球最广泛使用的开源命令行HTTP…...

为什么你的DeepSeek Terraform配置总在CI/CD中崩溃?5个被官方文档隐藏的state锁机制真相

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;为什么你的DeepSeek Terraform配置总在CI/CD中崩溃&#xff1f;5个被官方文档隐藏的state锁机制真相 DeepSeek 与 Terraform 的深度集成虽提升了 AI 基础设施编排能力&#xff0c;但其 state 锁行为在 …...

AI计算前沿:从存内计算到神经形态芯片的硬件革命

1. 从CES的喧嚣到AI研究的深水区&#xff1a;一次认知的转向每年一月的拉斯维加斯&#xff0c;消费电子展&#xff08;CES&#xff09;总是充斥着最炫目的灯光、最酷炫的 gadgets 和最大声的营销口号。作为一名长期跟踪半导体与系统设计的行业观察者&#xff0c;我和我的搭档—…...

别再让CPU风扇狂转了!手把手教你为Edge/Chrome解锁B站HEVC/AV1硬解,省电又流畅

别再让CPU风扇狂转了&#xff01;解锁浏览器硬解B站视频的终极指南 每次打开B站看视频&#xff0c;笔记本风扇就开始"起飞"&#xff1f;明明只是看个1080P视频&#xff0c;CPU占用率却飙升到80%以上&#xff1f;这很可能是因为你的浏览器正在使用软件解码&#xff08…...

大模型上手指南:从跑通到解剖,一步步深入核心机制!

本文提供了一套从零开始、由浅入深的实践路径&#xff0c;指导读者如何系统性地分析和学习大模型。首先通过配置环境、加载本地模型并成功进行推理&#xff0c;让读者直观感受模型运行。接着&#xff0c;结合运行结果回顾 Transformer、Tokenization 等核心概念&#xff0c;并探…...

Tinke完整技术指南:NDS游戏资源提取与逆向工程深度解析

Tinke完整技术指南&#xff1a;NDS游戏资源提取与逆向工程深度解析 【免费下载链接】tinke Viewer and editor for files of NDS games 项目地址: https://gitcode.com/gh_mirrors/ti/tinke Tinke是一款专业的任天堂DS&#xff08;NDS&#xff09;游戏资源提取与逆向工程…...

基于MCP协议与HaE工具构建AI安全情报助手实战指南

1. 项目概述&#xff1a;一个为安全工程师量身定制的“情报雷达”如果你是一名安全工程师、渗透测试人员或者负责企业安全运营的从业者&#xff0c;那么你一定对“信息收集”和“威胁情报”这两个词深有体会。每天&#xff0c;我们都需要从海量的数据源中——无论是公开的漏洞库…...