王道考研数据结构第六章知识点总结

news2024/11/26 20:19:48

6.1.1图的基本概念

 顶点集一定是非空集,边集可以是空集

 非连通图:让任意n-1个顶点之间两两相连,另一个顶点与任意一个都不存在路径,则为非连通图的最大边数。

注意长三角地区铁路网不属于连通分量,因为它没有包含尽可能多的边和顶点,只有扩展到整个大路铁路网才是连通分量。

 把每一个连通分量生成与之对应的生成树,即可得到整个非连通图的生成森林。

生成树具有很强的现实意义,如果几个村庄之间需要修公路,那么在所有的施工方案中需要去选择既可以连通所有村庄的路又可以减少修建成本的方案,即减少一些冗余边,就是极小连通子图.

 

 6.2.1 邻接矩阵法

有时也会把0设置为两个顶点之间不存在边 

 6.2.2 邻接表法

 邻接表法类似于树中的孩子表示法

 

 

6.2.3 十字链表,邻接多重表

 

 删除边(A,B)

 删除点E 

 6.2.4 图的基本操作

 6.3.1 图的广度优先遍历

 

 

 对于无向图来说,调用BFS的次数=连通分量数(极大连通子图)

 

 6.3.2 图的深度优先遍历

 

 6.4.1 最小生成树

 

 

 

 

 如果一个顶点此时还没有加入一颗树里,那么此时可以检查一下这个顶点和新加入的顶点有没有边,如果他们之间有边,如果他们之间有边,并且这个值比以前的lowCast值更低的话,那么我们就需要去更新lowCast值。

 Kruskal算法中运用到了并查集的思想,判断两个顶点是否在同一个集合中,没有在同一个集合则并起来,同属于一个集合说明已经连通,则跳过

 6.4.2 最短路径问题

 单源--只有一个源头,最短路径--从这个节点到达其他任意节点的最短路径。

 

 

每一个节点在第几层也直接反映了从起点2达到这些节点的距离是多少。

6.4.3 最短路径问题(Dijkstra算法)

 

 注:检查所有邻接自Vi(能从Vi直接到达)的顶点

 

 Prim算法中的lowCast记录的是当前顶点加入到目前组建的最小生成树的最小代价。

而Dijikstra算法dist记录的是从从源头到指定顶点的最短路径的值。

 6.4.4 最短路径问题(Floyd算法)

 

 6.4.5 有向无环图描述表达式

 

 

 

 

 6.4.6 拓扑排序

 

 

 

 关于拓扑排序的程序堆栈流程查看王道对应课件。

 关于逆拓扑排序的堆栈细节查看王道课件

 6.4.7 关键路径

 

 

 

 

 

 

 

 

 

 

 

 

 具体算法细节见王道课件

 

 

 

若将切番茄这个活动缩短为0.5,那整个切番茄的活动就变成了非关键活动 

 

 

 

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

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

相关文章

简单认识MySQL数据库索引

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、索引的概念1、简介2、作用3、索引的副作用:4、创建索引的原则依据5、索引的分类 二、索引的增删改查1.创建索引(1)创建普通索…

ios 通过xib自定义控件

通过xib自定义控件 xib和stroyboayd对比 共同点: 都是用来描述软件界面 都是用interface Builder工具来编辑 本质都是转换成代码去创建控件 不同点: xib是轻量级的,用来描述局部ui界面 创建模型文件 XMGCar 自定义控件 xib 图形设计 …

zookeeper和kafka与EFLFK集群

zookeeper和kafka 一:Zookeeper 概述1.Zookeeper 定义2.Zookeeper 工作机制3.Zookeeper 特点4.Zookeeper 数据结构5.Zookeeper 应用场景6.Zookeeper 选举机制6.1.第一次启动选举机制6.2.非第一次启动选举机制(1)当ZooKeeper 集群中的一台服务…

支持向量机(SVM)的超参数调整 C 和 Gamma 参数

作者:CSDN @ _养乐多_ 支持向量机(Support Vector Machine,SVM)是一种广泛应用的监督式机器学习算法。它主要用于分类任务,但也适用于回归任务。在本文中,我们将深入探讨支持向量机的两个重要参数:C和gamma。在阅读本文前,我假设您对该算法有基本的了解,并专注于这些…

【MySQL】MySQL在Centos7环境下安装

目录 一、卸载不要的环境 1.1、查看是否有安装mysql 1.2、关闭运行的程序 1.3、卸载安装 二、配置yum 源 2.1、下载yum 源 2.2 安装yum源 2.3 查看是否已经生效 三、安装mysql服务 四、启动服务 五、登录方法 方法一(不行就下一个) 方法二(不…

前端必看的书籍

十本学习前端必看书籍 第一本,入门 《Head first HTML&CSS》 最好的入门书。看两遍就对HTML & CSS 有个大概印象了。 此时把w3cschool作为备查手册收藏起来 第二本《CSS权威指南(第三版)》 最权威的CSS书籍,除了阅读W3C的文档外的不二选择(就是翻…

HDFS体系结构及基本概念

1、hdfs体系结构及基本概念 1.1 namenode是什么,作用是什么 Namenode维护了很多得信息,那么这么多信息存放在哪里呢?在hadoop中有个core-site.xml的文件 路径是 [root@cdp3 hadoop]# pwd /home/hadoop/hadoop-2.2.0/etc/hadoop 1.2 datanode是什么,作用是什么 data…

Kubernetes对象深入学习之三:对象属性

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《Kubernetes对象深入学习》系列的第三篇,主要内容是关于对象属性的知识点,关于对象属性,先通过一个具体…

vue3-03筛选任务

前置知识:生命周期函数在vue3不再是配置式的,而是一个普通函数。 步骤: 确认筛选条件是通过hash值声明filter函数:通过hash改变的筛选得到对应的任务列表userFilter.js文件:用于任务的筛选。 使用一个响应式变量visib…

copy和xcopy实现复制文件和文件目录

copy命令复制文件 语法 copy [/d] [/v] [/n] [/y | /-y] [/z] [/a | /b] <source> [/a | /b] [<source> [/a | /b] [ ...]] [<destination> [/a | /b]]参数说明 参数说明/d允许加密的源文件保存为解密的目标文件/v验证目标文件是否正确写入/n如果需要&…

kubesphere的CICD

安装 SonarQube 服务器 请先安装 Helm&#xff0c;以便后续使用该工具安装 SonarQube。例如&#xff0c;运行以下命令安装 Helm 3&#xff1a; curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash查看 Helm 版本 helm versionversion.Buil…

3D渲染速度慢,花重金买显卡还是用云渲染更划算

3D渲染对建筑师和设计师来说并不陌生&#xff0c;3D渲染的过程中出现渲染卡顿、特殊材质难以渲染&#xff0c;或者本地配置不足、本地渲染资源不够时&#xff0c;常常会影响工作效率。本文比较了3D渲染时&#xff0c;为提高工作效率&#xff0c;买显卡还是用云渲染更划算&#…

SystemVerilog 教程第二章数据类型:队列

SystemVerilog 队列 SystemVerilog queue&#xff08;队列&#xff09;是一种 First In First Out&#xff08;先入先出&#xff09;方案&#xff0c;您可为其设置变量大小&#xff0c;用于存储相同数据类型的各种元素。 它与一维解包阵列类似&#xff0c;同样可以自动伸缩调整…

zabbix 6.0 监控LNPM环境

这里的LNPM是指Linux&#xff0c;Nginx,php-fpm和Mysql.具体版本如下。 Linux : centos7.9Nginx: 1.22.1php-fpm:7.4Mysql: 8.0 一、centos7.9 编译安装Nginx 为了弄清楚Nginx各种配置&#xff0c;我们采用编译安装的形式部署Nginx。 1.下载安装包 首先下载Nginx软件包&am…

unity 调用C++ dll 有类和指针操作

这个在之前unity 调用C dll 操作升级套娃函数调用_天人合一peng的博客-CSDN博客的基础上&#xff0c;但实事时类相互嵌套&#xff0c;非常不好处理。 1 测试直接将main()生成dll程序能运行不。 发现是可以的。 2 那就是想方法把对象或指针的操作的下一级函数直接写到main里面&…

简单认识数据库用户管理

文章目录 一、数据库用户管理1、新建用户&#xff08;1&#xff09;创建用户使用明文设置密码&#xff08;2&#xff09;获取密文再给新用户设置密码&#xff08;3&#xff09;查看数据库用户和其他信息&#xff08;4&#xff09;查看当前登录用户信息 2.修改数据库用户相关信息…

漏洞复现-CVE-2023-33246 Apache RocketMQ RCE漏洞原理与复现

目录 漏洞原理漏洞描述影响范围 Apache RocketMQ学习文档学习代码审计 漏洞复现docker环境搭建exp代码 总结参考 漏洞原理 漏洞描述 For RocketMQ versions 5.1.0 and below, under certain conditions, there is a risk of remote command execution. Several components of…

Wine的调试方法

wine的运行管理 # 运行exe程序 wine <exe程序># 运行msi程序 wine msiexec /i <msi程序> wine start <msi程序># 静默安装 wine <exe程序> /q /doNotRequireDRMPrompt /noupdate# 杀掉wine进程 wineserver -k pkill wine配置wine 配置环境变量 # 配…

GD32f103系列外部晶振更改

GD32f103系列的芯片现在基本很普通了&#xff0c;外部很多资料都是使用8MHz晶振为CPU提供主频。很多的时候由于项目的原因&#xff0c;外部晶振会更换不同的频率&#xff0c;有4MHz或者12Mhz的&#xff0c;因此需要在系统文件中做一些更改。 以8MHz晶振转12MHz晶振为例&#x…

Redis(三)存储原理与数据模型(hash冲突、渐进式rehash)

Redis系列文章 Redis&#xff08;一&#xff09;原理及基本命令&#xff08;柔性数组&#xff09; Redis&#xff08;二&#xff09;网络协议和异步方式&#xff08;乐观锁&悲观锁&#xff09; Redis&#xff08;三&#xff09;存储原理与数据模型&#xff08;hash冲突、渐…