代码随想录算法训练营第三十九天| 图论理论基础

news2024/9/23 5:28:24

今天是图论入门的第一天,主要的学习内容主要是图论的理论基础。

图论理论基础

图的种类

图一般可以分为有向图和无向图,无向图是指边没有方向,有向图是指边有方向,其中,还存在一种加权有向图,指的是每条边上带有一定的权重。

有向图

无向图

加权有向图

图的度

接下来的一个概念是节点的度,指的是有几条边连接这个节点。

对于有向图,则可以细分为出度和入度,出度指的是从该节点出现的边,入度指的是指向该节点的边。例如对于节点3,出度为1,入度为2.

图的连通性 

在无向图中,任意两个节点都是可以到达的,我们称为连通图,相反则称为非连通图。

连通图

非连通图 

除此之外,对于有向图,如果任意两个节点都是可达的,我们称之为强连通图。

图的构造 

构造图一般有两种方法,即邻接表和邻接矩阵。

邻接表就是用一个二维数组对图进行存储,如果i点指向j点,那么grid[i][j]=1;对于无向图,grid[i][j]和grid[j][i]都为1.邻接表在存储点多边少的数据时会申请过大的二维数组,造成空间浪费。不适合用于存储稀疏图。

邻接表存储方法 

邻接矩阵是另一种图的存储方式,使用数组+链表的方式进行存储。

如图所示,节点1指向节点3和节点5,节点2指向节点4,节点3和节点5,以此类推。邻接表在存储稀疏图时有更好的空间利用率,但检查任意两节点是否存在边效率较低。

图的遍历方法

图的遍历方法主要分为两周:深度优先搜索(DFS),广度优先搜索(BFS)。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ATR - LSIs supported BIT

6.3.3 Global Interface bytes ts_102221v170400p.pdf

【人工智能】多模态AI:如何通过融合文本、图像与音频重塑智能系统未来

我的主页:2的n次方_ ​ 随着人工智能技术的飞速发展,多模态AI逐渐成为构建智能系统的重要方向。传统的AI系统通常依赖于单一模态的数据,如文本、图像或音频。而多模态AI通过结合多种数据类型,能够在更复杂的场景下提供更智能的解…

给自己复盘的随想录笔记-链表

链表 定义 数字域和指针域 种类 单链表,双链表,循环链表 链表的存储方式 链表是通过指针域的指针链接在内存中各个节点。 所以链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址上,分配机制取决于操作系统…

FFmpeg下载与集成:.NET开发者入门指南

文章目录 前言一、FFmpeg下载1.访问FFmpeg官网2.选择合适的版本3.下载并安装 二、.NET项目中集成FFmpeg1.引入FFmpeg库2.编写代码调用FFmpeg3.处理FFmpeg输出和错误 三、进阶使用总结 前言 在音视频处理领域,FFmpeg无疑是一个强大的工具库,它支持几乎所有…

3min 告诉你!如何用波特五力分析模型解读行业格局?

在瞬息万变,竞争激烈的市场环境中,企业不仅要关注自身的发展,还需要时刻了解竞争对手的动态。通过波特五力模型来分析行业竞争状况,企业可以提前制定战略,获得竞争优势。 什么是波特五力模型? 波特五力模…

edge跟谷歌浏览器配置浏览器可跨域

在D盘下创建 vscode\test 文件夹 D:\xxxx\vscode\test 直接复制edge或者谷歌的一个快捷方式 名字就叫可跨域 可以随便取 右键选中目标浏览器点击属性 配置edge的目标路径 "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --disable-web-security …

【操作系统】实验:内存管理

目录 一、实验目的 二、实验要求 三、实验步骤 四、核心代码 五、记录与处理 六、思考 七、完整报告和成果文件提取链接 一、实验目的 1、加深对固定和动态分区分配内存管理方式的理解 2、理解动态分区分配算法:首次适应算法,循环首次适应算法&a…

文心一言 VS 讯飞星火 VS chatgpt (334)-- 算法导论23.1 3题

三、证明:如果图G的一条边(u,v)包含在图G的某棵最小生成树中,则该条边是横跨图G的某个切割的一条轻量级边。 文心一言: 为了证明这个命题,我们可以按照以下步骤进行: 第一步,假设图 G G G的一…

程序员对未来思考:面向AI编程;继2B,2C后,2AI开发工程师能否成为未来?

目录 前言当前AI状况幻觉问题上下文长度限制人在回路、提示工程师 AI对未来的影响AI改变了交互形式穿孔纸带命令行时代图形用户界面对话式交互 AI无法直接影响物理世界AI 与开发者AI2B\2C\2G\2AI2AI、AI的幻想 前言 在科技日新月异的今天,人工智能(AI&a…

【三指针法】颜色分类

目录 1.前言2.题目简介3.求解思路4.示例代码 1.前言 2.题目简介 题目链接&#xff1a;LINK 3.求解思路 求解思路&#xff1a;三指针法 4.示例代码 class Solution { public:void sortColors(vector<int>& nums) {int i 0;int left -1;int right nums.size…

JAVA安全之Velocity模板注入刨析

文章前言 关于Velocity模板注入注入之前一直缺乏一个系统性的学习和整理&#xff0c;搜索网上大多数类似的内容都是一些关于漏洞利用的复现&#xff0c;而且大多都仅限于Velocity.evaluate的执行&#xff0c;对于载荷的构造以及执行过程并没有详细的流程分析&#xff0c;于是乎…

大模型学习必备指南:深入解析技术原理与应用,从入门到精通一应俱全

目录 1. 深度神经网络 2. 激活函数 3. 损失函数 4. 优化算法 5. 正则化 6. 模型结构 7. 预训练与微调 8. 模型压缩与加速 9. 解释性与可解释性 10. 隐私与安全 11. 总结 推荐阅读 有人说&#xff0c;最近我们都患上了大模型焦虑症。 随着计算能力的提升和数据量的…

视频MOV如何转换成MP4?介绍这些转换方案

视频MOV如何转换成MP4&#xff1f;不同的应用场景往往需要使用不同格式的视频文件,其中MOV 和 MP4 是两种常见的视频格式。MOV 格式由苹果公司开发&#xff0c;主要用于 QuickTime 平台&#xff1b;而 MP4 格式则是一种更为通用的标准&#xff0c;广泛应用于互联网、移动设备以…

Java 输入与输出之 NIO【非阻塞式IO】【NIO核心原理】探索之【一】

Java标准的输入/输出&#xff08;Input/Output&#xff0c;简称I/O&#xff09;是Java程序与外部世界进行交互的重要机制&#xff0c;它允许程序读取和写入数据到各种类型的源&#xff0c;如文件、网络套接字、管道、内存缓冲区等。Java I/O API主要位于java.io包中&#xff0c…

SqlHelper 使用EF-Core框架 连接池处理并发

定义数据库 数据库名称&#xff1a;T_dicomPatientMsg 注意5大约束条件&#xff1a; 1.主键约束&#xff1a;primary key IDKEY设置为主键&#xff0c;主键设置自增长 2.唯一性约束&#xff1a;unique 3.默认约束&#xff1a;default 所有值都要设置默认值&#xff0c…

Unraid 手动安装docker

目录 常用镜像链接一.安装示例1[firefox浏览器]:1.离线下载docker镜像2.将xxx.tar镜像数据加载到 Docker 中3.手动添加docker 二.安装示例2[等我有东西需要安装再回来补教程吧]:三.获取UDI和GID 常用镜像链接 特别版 emby 文件管理器 filebrowser内外穿透 zerotierNAS媒体库管…

Python和Pycharm安装

有需要的私聊我吧&#xff01;&#xff01;&#xff01;

伺服电机最佳速度范围是多少?

伺服电机的最佳速度范围取决于多种因素&#xff0c;包括电机的规格、负载类型、控制要求和应用环境等。一般来说&#xff0c;伺服电机的最佳速度范围是其额定转速的70%到100%之间。这一范围内&#xff0c;电机能够提供最佳的效率、精度和响应速度。 关键因素影响伺服电机速度范…

从B端工程师到AI绘画工程师:我的转行之路与实战指南

一、背景&#xff1a;B端工程师的迷茫与探索 大家好&#xff0c;我是一名有着五年B端服务经验的软件工程师。在长期的B端工作中&#xff0c;我逐渐感到自己的技术栈和视野受限&#xff0c;对未来的职业发展产生了迷茫。在一次偶然的机会中&#xff0c;我接触到了AI绘画这一领域…

nacos 安装

1. 环境准备 使用此快速开始方法进行Nacos安装及部署&#xff0c;需要安装Docker和Docker Compose。 如何下载不下来&#xff0c;可换镜像加速地址 vi /etc/docker/daemon.json {"registry-mirrors": ["https://docker.registry.cyou"] }可用镜像加速地…