挑战你的数据结构技能:复习题来袭【6】
1. (单选题)设无向图的顶点个数为n,则该图最多有()条边
A. n-1
B. n(n-1)/2
C. n(n+1)/2
D. 0
答案:B
分析:
2. (单选题)含有n个顶点的连通无向图,其边的个数至少为()。
A. n-1
B. n
C. n+1
D. nlog2n
答案:A
分析:
在一个连通无向图中,至少需要有足够的边将所有顶点连接起来,使得图是连通的。这种情况下,最典型的结构是树。树是一种特殊的连通无向图,树具有以下性质:
- **树的顶点数为 n。
- **树的边数为 n-1。
因此,一个含有n个顶点的连通无向图,若它是最小连通信(一般是围充分离化为树结构),则它的边数至少为 n-1。
3. (单选题)()的邻接矩阵是对称矩阵。
A. 有向图
B. 无向图
C. AOV网
D. AOE网
答案:B
分析:
邻接矩阵是否对称取决于图的属性:
-
有向图(Directed Graph):在这种图中,边有方向,即从一个顶点指向另一个顶点。因此,顶点 到顶点 有一条边与顶点 到顶点 有一条边是两种不同的情况,其邻接矩阵一般不对称。
-
无向图(Undirected Graph):在这种图中,边没有方向,因此顶点 与顶点 之间有一条边即顶点 与顶点 之间也有一条边。其邻接矩阵是对称矩阵。
-
AOV网(Activity on Vertex network)和 AOE网(Activity on Edge network):这两种表示的是带权有向图的一种特例,同样其邻接矩阵不对称,因为有方向。
4. (单选题)无向图G=(V,E),其中:V={a, b, c, d,e,f },E={(a,b),(a,e),(a,c),(b, e),(c,f),(f,d),(e,d)},以顶点a为源点,对该图进行深度优先遍历,得到的顶点序列正确的是()。
A. a,b,e,c,d,f
B. a,c,f,e,b,d
C. a,e,b,c,f,d
D. a,e,d,f,c,b
答案:D
5. (单选题)在有向图G的拓扑序列中,若顶点Vi 在顶点Vj 之前,则下列情形不可能出现的是()。
A. G中有边<Vi ,Vj>
B. G中有一条从Vi 到Vj 的路径
C. G中没有边<Vi ,Vj>
D.G中有一条从Vj 到Vi 的路径
答案:D
分析:如果在拓扑排序中 Vi在Vj之前,那么在原图中不应存在从Vj到Vi的路径,否则会形成一个环,无法进行拓扑排序。
6. (单选题)带权有向图G用邻接矩阵A存储,则顶点i的入度等于A中()。
A. 第 i 行非∞的元素之和
B.第 i 列非∞的元素之和
C. 第 i 行非∞且非0元素个数
D. 第 i 列非∞且非0元素个数
答案:D
分析:
7. (单选题)图的深度优先遍历算法类似于二叉树的()算法。
A. 先序遍历
B.中序遍历
C.后序遍历
D.层次遍历
答案:A
分析:
图的深度优先遍历(Depth-First Search, DFS)算法的思想是尽可能深地探索每条边,直到不可能再继续为止,然后回溯。这与二叉树的先序遍历(Preorder Traversal)非常相似。
在二叉树的先序遍历中,遍历的顺序是:
- 访问根节点
- 递归地先序遍历左子树
- 递归地先序遍历右子树
深度优先遍历(DFS)同样是先访问一个节点,然后递归地访问其相邻节点,尝试尽可能深入地进行访问。这种方式和二叉树的先序遍历是具有相同的思路和顺序的。
与其他遍历方法的比较:
- 中序遍历:左子树 -> 根节点 -> 右子树(但图结构没有明确的左右子树之分)
- 后序遍历:左子树 -> 右子树 -> 根节点
- 层次遍历:按层次逐层访问节点(类似广度优先遍历)
8. (单选题)一个有向图G的邻接表存储结构如图所示,现按深度优先搜索遍历,从1出发,所得到的顶点序列是()。
A. 1,2,3,4,5
B. 1,2,3,5,4
C. 1,2,4,5,3
D. 1,2,5,3,4
答案:B
9. (单选题)对如图所示的图进行从顶点1开始的广度优先搜索遍历,可得到的顶点访问序列为()。
A. 1,3,2,4,5,6,7
B. 1,2,4,3,5,6,7
C. 1,2,3,4,5,7,6
D. 2,5,1,4,7,3,6
答案:A
10. (单选题)对于含有n个顶点的带权连通图,它的最小生成树是指图中任意一个( )。
A. 由n-1条权值最小的边构成的子图
B. 由n-1条权值之和最小的边构成的子图
C. 由 n-1条权值之和最小的边构成的连通子图
D. 由n个顶点构成的边的权值之和最小的连通子图
答案:D
11. (单选题)下列关于图的叙述中,正确的是()。
a:回路是简单路径
b:存储稀疏图,用邻接矩阵比邻接表更省空间
c:若有向图中存在拓扑序列,则该图不存在回路
A. 仅a
B. 仅a,b
C. 仅c
D. 仅a,c
答案:C
分析:
a:回路是简单路径
- 这是错误的。简单路径是指路径中没有重复顶点的路径,而回路是起点和终点相同的路径,且路径中顶点可以重复使用。因此,回路并不一定是简单路径。
c:若有向图中存在拓扑序列,则该图不存在回路
- 这是正确的。如果一个有向图有拓扑序列,那么它必须是有向无环图(DAG),这意味着图中不存在回路,否则无法构成拓扑序列。
综上所述,正确的叙述只有选项 c。
12. (单选题)若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑序列的结论是()。
A. 存在,且唯一
B. 存在,且不唯一
C. 存在,可能不唯一
D. 无法确定是否存在
答案:C
分析:
13. (单选题)对如图所示的有向带权图,若采用迪杰斯特拉算法求从源点 a到其他各顶点的最短路径,则得到的第一条最短路径的目标顶点是 b,第二条最短路径的目标顶点是c,后续得到的其余各最短路径的目标顶点依次是()。
A. d、e、 f
B. e、d、f
C. f、 d、e
D. f、 e、d
答案:C
14. (单选题)
下列关于最小生成树的叙述中,正确的是( )。
Ⅰ.最小生成树的代价唯一
Ⅱ.所有权值最小的边一定会出现在所有的最小生成树中
Ⅲ.使用普里姆算法从不同顶点开始得到的最小生成树一定相同
Ⅳ.使用普里姆算法和克鲁斯卡尔算法得到的最小生成树总不相同
A. 仅Ⅰ
B. 仅Ⅱ
C. 仅Ⅰ、Ⅲ
D. 仅Ⅱ、Ⅳ
答案:A
15. (多选题)一个有n个结点的无向图,最少有()个连通分量,最多有()个连通分量。
A. 0
B. 1
C. n-1
D. n
答案:BD
分析:
在一个有n个节点的无向图中:
-
最少有 1 个连通分量。这是因为无论图中的边怎么分布,只要图中有节点,至少有 1 个连通分量(即整个图本身一块,图不可能没有节点)。所以图的最少连通分量是 1。
-
最多有n个连通分量。这是在每个节点都没有边连接其他节点的情况下,每个节点形成一个单独的连通分量,因此最多有n个连通分量。
16. (多选题)()方法可以判断出一个有向图是否有环。
A. 深度优先遍历
B. 拓扑排序
C. 求最短路径
D. 求关键路径
答案:AB
分析:
判断一个有向图是否有环的常用方法是:
A. 深度优先遍历:在深度优先遍历(DFS)的过程中,可以检测是否存在回边(即从当前节点访问已经在当前遍历路径中的节点)。如果存在回边,则说明图中存在环。
B. 拓扑排序:如果一个有向图可以进行拓扑排序,那么这个图是无环的(即有向无环图,DAG)。反过来,如果一个图不能进行完整的拓扑排序(即过程中某些节点无法加入排序),则说明图中存在环。
C. 求最短路径和D. 求关键路径通常用于计算路径长度或优化路径,不能直接用于判断有向图中是否存在环。
相关文章:
挑战你的数据结构技能:复习题来袭【6】
1. (单选题)设无向图的顶点个数为n,则该图最多有()条边 A. n-1 B. n(n-1)/2 C. n(n1)/2 D. 0 答案:B 分析: 2. (单选题)含有n个顶点的连通无向图,其边的个数至少为()。 A. n-1 B. n C. n1 D. nlog2n 答案:A…...
如何反编译jar并修改后还原为jar
如何反编译jar并修改后还原为jar 目标:修改jar包中某个类的某个方法后还原为新的jar 1.新建android工程,把旧的jar添加为lib 2.用jadx-gui打开旧的jar并保存所有资源 3.找到保存的资源中想修改的.java类 4.复制类中的内容, 在android工程中新建一个同样路径的包,并在包下创建…...
统计信号处理基础 习题解答10-5
题目 通过令 并进行计算来重新推导MMSE估计量。提示:利用结果 解答 首先需要明确的是: 上式是关于观测值x 的函数 其次需要说明一下这个结果 和教材一样,我们用求期望,需要注意的是,在贝叶斯情况下,是个…...
Vue3实战笔记(60)—从零开始:一步步搭建Vue 3自定义插件
文章目录 前言一、自定义插件二、使用步骤总结 前言 在开发和学习中,经常使用一些好用的插件,那么如何创建一个自己的插件呢?在 Vue 3 中,你可以通过创建一个包含 install 方法的对象来定义自定义插件。install 方法接收两个参数…...
Java面向对象笔记
多态 一种类型的变量可以引用多种实际类型的对象 如 package ooplearn;public class Test {public static void main(String[] args) {Animal[] animals new Animal[2];animals[0] new Dog();animals[1] new Cat();for (Animal animal : animals){animal.eat();}} }class …...
如何通过PHP语言实现远程控制多路照明
如何通过PHP语言实现远程控制多路照明呢? 本文描述了使用PHP语言调用HTTP接口,实现控制多路照明,通过多路控制器,可独立远程控制多路照明。 可选用产品:可根据实际场景需求,选择对应的规格 序号设备名称厂…...
Capture One Pro 23:专业 Raw 图像处理的卓越之选
在当今的数字摄影时代,拥有一款强大的图像处理软件至关重要。而 Capture One Pro 23 for Mac/Win 无疑是其中的佼佼者,为摄影师和图像爱好者带来了前所未有的体验。 Capture One Pro 23 以其出色的 Raw 图像处理能力而闻名。它能够精准地解析和处理各种…...
【主题广泛|投稿优惠】2024年交通运输与信息科学国际会议(ICTIS 2024)
2024年交通运输与信息科学国际会议(ICTIS 2024) 2024 International Conference on Transportation and Information Science 【重要信息】 大会地点:青岛 大会官网:http://www.icictis.com 投稿邮箱:icictissub-conf.…...
表格误删数据保存关闭后如何恢复?5个恢复方法大公开!
“我在编辑表格的时候一不小心就删除了部分数据,现在真的不知道该怎么操作了。希望大家能帮帮我吧!” 在日常工作中,我们经常会使用到各种表格软件来处理和分析数据。然而,有时由于操作失误或其他原因,我们可能会误删表…...
Go 语言中的切片:灵活的数据结构
切片(slice)是 Go 语言中一种非常重要且灵活的数据结构,它提供了对数组子序列的动态窗口。这使得切片在 Go 中的使用非常频繁,特别是在处理动态数据集时。本文将探讨切片的概念、操作和与函数的交互,以及如何有效地使用…...
在鲲鹏服务器搭建k8s高可用集群分享
高可用架构 本文采用kubeadm方式搭建k8s高可用集群,k8s高可用集群主要是对apiserver、etcd、controller-manager、scheduler做的高可用;高可用形式只要是为: 1. apiserver利用haproxykeepalived做的负载,多apiserver节点同时工作…...
MySQL之数据库事务机制学习笔记(五)
事务机制 事务(Transaction)是数据库管理系统中的一个重要概念,它是一组数据库操作的逻辑单元,要么全部执行成功,要么全部执行失败,具有以下四个特性,通常缩写为 ACID: 原子性&…...
linux 系统被异地登录,cpu占用拉满100%
一般是kswapd0导致的cpu占用异常 按顺序执行以下操作 在控制台执行top命令,查看占用最高的是否kswapd0。基本100%占用。记下该进程ID 5081 执行查找命令 find / -name kswapd0 显示查找结果: /proc/3316/.X2c4-unix/.rsync/a/kswapd0 /root/.configrc…...
智慧校园应用平台的全面建设
在当今社会,随着科技的不断进步,智慧校园应用平台逐渐成为学校管理的必备工具。在实现智慧校园全面建设的过程中,学校需要运用先进的技术和创新的理念,为教育提供更好的服务和支持。这篇文章将为您介绍智慧校园应用平台的全面建设…...
图论第6天
提高效率!!!两道题看并查集 841.钥匙和房间 忘了把visited 加引用了:& class Solution { public:bool canVisitAllRooms(vector<vector<int>>& rooms) {vector<int>visited(rooms.size(),false);dfs(rooms,visited,0);for(int i 0;i …...
Redis教程(二十一):Redis怎么保证缓存一致性
传送门:Redis教程汇总篇,让你从入门到精通 Redis 的缓存一致性 Redis 的缓存一致性是指在使用 Redis 作为缓存层时,保证缓存中的数据与数据库中的数据保持一致的状态。在分布式系统中,数据一致性是一个重要的问题,因为可能存在多个客户端同时读写同一数据,或者数据在不同…...
android apk签名
android apk签名 命令: java -jar signapk.jar platform.x509.pem platform.pk8 **.apk ***.apk note: apk密钥为: platform.pk8和platform.x509.pem 路径: build\target\product\security apk签名工具:sign…...
flutter 解析json另类封装方式 List<bean>,哈哈哈
flutter 解析json另类封装方式,哈哈哈 日常学习,仅供参考,不喜 勿喷 http请求数据泛型解析封装,需要判断泛型数据类型再根据类型解析,本文只抽取了list演示 核心代码 import dart:convert;import package:webwsyn/h…...
哈希表(Hash table)
哈希表(Hash table),也称为散列表,是一种根据关键码值(Key value)直接进行访问的数据结构。它通过散列函数(Hash function)将关键码值映射到表中的一个位置,以此来访问记录,从而加快查找的速度。以下是关于哈希表的详细解释: 基本概念 散列函数:将关键码值映射到表…...
【c语言】自定义类型-结构体
结构体 结构体的声明与使用结构体的声明与初始化结构体的自引用 结构体的内存对齐对齐规则为什么存在内存对齐修改默认对齐数 结构体的传参结构体实现位段什么是位段位段的内存分配位段的跨平台问题位段使用的注意事项 结构体:是一个自定义的类型,成员可…...
2-链表-71-环形链表 II-LeetCode142
2-链表-71-环形链表 II-LeetCode142 参考:代码随想录 LeetCode: 题目序号142 更多内容欢迎关注我(持续更新中,欢迎Star✨) Github:CodeZeng1998/Java-Developer-Work-Note 技术公众号:CodeZeng1998&#…...
【UnityShader入门精要学习笔记】第十七章 表面着色器
本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 我的GitHub仓库 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 表面着色器…...
Python社会经济 | 怀特的异方差一致估计量
🎯要点 🎯算法和模型底层数学及代码:🖊线性代数应用(主成分分析):降维、投影(用于求解线性系统)和二次形式(用于优化)| 🖊奇值分解…...
《被讨厌的勇气》笔记
自由就是被别人讨厌。对人而言,最大的不幸就是不喜欢自己。活在“如果怎样怎样”之类的假设之中,就根本无法改变。活在害怕关系破裂的恐惧之中,那是为他人而活的一种不自由的生活方式。人生是连续刹那,我们只能活在“此时此刻”。…...
Python爬虫协程批量下载图片
import aiofiles import aiohttp import asyncio import requests from lxml import etree from aiohttp import TCPConnectorclass Spider:def __init__(self, value):# 起始urlself.start_url value# 下载单个图片staticmethodasync def download_one(url):name url[0].spl…...
Flask Web开发基础:数据库与ORM实战
Flask Web开发基础:数据库与ORM实战 该文介绍了如何使用 Flask、SQLAlchemy 和 SQLite 实现数据库操作。首先,通过创建虚拟环境和安装 flask-sqlalchemy(版本2.5.1)及 sqlalchemy(版本1.4.47)来设置环境。接…...
pidstat -d 1分析磁盘吞吐量
iostat -dx 1 查看磁盘IO吞吐量 pidstat -d 1看是哪个进程写的...
期望20K,2年golang深圳某互联网小公司一面
后续约了二面(CTO面),需要到现场,基本没问啥具体的技术知识,都是聊规划和个人职业目标 一面 1、假设访问百度网站,从在浏览器输入网址,到最终页面展示出来,中间会发生哪些事情&…...
#02 安装指南:如何配置Stable Diffusion环境
文章目录 前言前置条件第1步:安装Python和PIP第2步:创建虚拟环境第3步:安装PyTorch和CUDA第4步:安装Stable Diffusion相关库第5步:测试环境结论 前言 在之前的文章中,我们介绍了Stable Diffusion基础入门和…...
拼多多笔试
拼多多2022数据分析笔试(0822) 一、选择题 1.已知样本量n,样本均值及方差求置信区间 2.决策树 3.峰度系数 4.协方差 5.第一、第二熵变 6.充分统计量 7.xgboost 8.方差分析中的多重比较 二、编程题 1. 一张用户点击路径的表&#x…...
react是网站开发/杭州推广系统
很多人是在转换时特殊字符被替换成了unicode编程格式,而我碰到的类似,只不过是后台转换成json字符串到前端,前端解析时 双引号和 / 斜杠被原样转换,冲突了json的关键字符,导致解析时提示某某位置有错误. 解决方法,总有一款适合你: Gson gs new GsonBuilder().setPrettyPrinti…...
自己做网站如何销售/小红书关键词搜索量查询
前言 大家好,我是阿光。 本专栏整理了《PyTorch深度学习项目实战100例》,内包含了各种不同的深度学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码+数据集。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10语言环境:python3.7编译器:PyCharmPy…...
张家港网站包年/长春网站建设公司哪家好
def func(str):n0c 0space 0o 0 #定义四个类型的初始值为0for i in str: #使字符串内字符逐个输出if i.isdigit(): #如果使全数字则n1,下同n 1elif i.isalpha(): c 1elif i.isspace():space 1else:o1print(n,c,space,o) …...
国内做网站最好的公司/免费发布软文广告推广平台
PHP获取毫秒级时间戳的方法本文实例讲述了PHP获取毫秒级时间戳的方法。分享给大家供大家参考。具体分析如下:PHP本身没有提供获取毫秒级时间戳的函数,java里面可以通过gettime();获取。如果是要与java写的某些程序进行高精度的毫秒级的对接通信ÿ…...
wordpress 如何安装/小说关键词搜索器
点击上方入口立即【自由构建 探索无限】一起共赴年度科技盛宴!前言随着机器学习的不断发展和在各个行业的使用,很多企业已经从最初关注构建模型、算法选择到了现在如何构建自己的机器学习平台,在该平台上实现从数据处理、模型训练、模型部署和…...
线上p2p网站建设/百度数据研究中心
如果把要做的事情按照紧急、不紧急、重要、不重要的排列组合分成四个象限,这四个象限的划分有利于我们对时间进行深刻的认识及有效的管理。 第一象限这个象限包含的是一些紧急而重要的事情,这一类的事情具有时间的紧迫性和影响的重要性,无法回…...