【数据结构】邻接表与邻接矩阵的转换
一.基本思想
1.邻接矩阵转换为邻接表:
先设置一个空的邻接表,然后查找邻接矩阵的值不为零元素,找到后在邻接表的单链表对应位置加入表边节点。
2.邻接表转换为邻接矩阵:
在邻接表上顺序取出每个表边结点,将邻接矩阵对应单元置1.
二.代码实现
邻接矩阵转换为邻接表
template <class T>
VertexNode<T>* change(MGraph<T> v){VertexNode<T>* p;int i,j;struct ArcNode *q;p=new VertexNode<T> [v.vertexNum];for(i=0;i<v.vertexNum;i++){//邻接表赋初值p[i].vertex=i;p[i].firstEdge=NULL;}for(i=0;i<v.vertexNum;i++){for(j=0;i<v.vertexNum;j++){if(v.arc[i][j]){q=new struct ArcNode;q->adjvex=j;q->next=p[i].firstEdge;p[i].firstEdge=q;}}}return p;
}
邻接表转换为邻接矩阵
template <class T>
int** change(ALGraph<T> v){int **p=new int[v.vertexNum][v.vertexNum];int i,j;struct ArcNode *q;for(i=0;i<v.vertexNum;i++){//邻接矩阵赋初值for(j=0;j<v.vertexNum;j++){p[i][j]=0;}}for(i=0;i<v.vertexNum;i++){q=v.adjList[i].firstEdge;while(q){p[i][q->adjvex]=1;q=q->next;}}return p;
}
相关文章:
【数据结构】邻接表与邻接矩阵的转换
一.基本思想 1.邻接矩阵转换为邻接表: 先设置一个空的邻接表,然后查找邻接矩阵的值不为零元素,找到后在邻接表的单链表对应位置加入表边节点。 2.邻接表转换为邻接矩阵: 在邻接表上顺序取出每个表边结点,将邻接矩阵…...
VR智慧景区:VR赋能文旅产业,激活消费潜能
随着国家数字化战略的不断深入实施,文旅产业数字化转型的步伐也在逐渐加快,以VR技术赋能文旅产业,让文旅景区线上线下双渠道融合,进一步呈现文化底蕴、激活消费潜能。 VR智慧景区以沉浸式、互动式、科技感的方式,将景区…...
Spring Boot EasyPOI 使用指定模板导出Excel
相信大家都遇到过,用户提出要把界面上的数据导成一个Excel,还得是用户指定的Excel格式,用原生的POI,需要自己去实现,相信是比较麻烦的,所以我们可以使用开源的EasyPOI. 先上个图,看看是不是大家…...
postgresql:记录表膨胀引起的io问题的处理
文章目录 1. io异常2.查看profile报告2.1 生成事发时间段的pgprofile2.2 查看报告 3.检查table是否膨胀4.执行vacuum full5.总结 1. io异常 iostat -x 1 20 Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq…...
Windows下安装RabbitMQ
1.安装Erlang 因为RabbitMQ是用Erlang语言编写的,所以在安装RabbitMQ之前需要先安装Erlang。 如果还未安装Erlang,官方下载安装包,点击Download Windows installer下载Erlang Downloads - Erlang/OTP 下载Erlang/OTP后,双击otp的…...
广州华锐互动VRAR:利用VR开展刑事案件公安取证培训,沉浸式体验提升实战能力
随着科技的飞速发展,虚拟现实(VR)技术为我们的生活和工作带来了前所未有的便利。近年来,VR技术在刑事案件公安取证培训中的应用逐渐显现出其独特优势。通过模拟真实的犯罪现场,VR技术为学员提供了沉浸式的体验,使他们在安全的环境…...
消息消费过程
前言 本文介绍下Kafka消费过程, 内容涉及消费与消费组, 主题与分区, 位移提交,分区再平衡和消费者拦截器等内容。 消费者与消费组 Kafka将消费者组织为消费组, 消息只会被投递给消费组中的1个消费者。因此, 从不同消费组中的消费者来看, Kafka是多播(Pub/Sub)模式…...
使用Lychee搭建个人图片存储系统并进行远程访问设置实现公网访问本地私人图床
文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站,可以看做是云存储的一部分,既可…...
12-2- DCGAN -简单网络-卷积网络
功能 随机噪声→生成器→MINIST图像。 训练方法 0 损失函数:gan的优化目标是一个对抗损失,是二分类问题,用BCELoss 1 判别器的训练,首先固定生成器参数不变,其次判别器应当将真实图像判别为1,生成图像判别为0 loss=loss(real_out, 1)+loss(fake_out, 0) 2 生成器的…...
Redis持久化策略之RDB与AOF
文章目录 1.RDB1)基本介绍2)自动触发3)手动触发4)RDB文件5)优点缺点 2.AOF1)基本介绍2)使用方式3)工作流程4)重写机制5)AOF文件6)优点缺点 3.RDB AOF 我们都知道,redis 是一个基于内存的数据库。基于内存的好处是访问速度快,缺点是“不持久”——当数据…...
Python学习笔记--初识 Python 正则表达式
初识 Python 正则表达式 正则表达式是一个特殊的字符序列,用于判断一个字符串是否与我们所设定的字符序列是否匹配,也就是说检查一个字符串是否与某种模式匹配。 Python 自 1.5 版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。re 模块使 Python 语言拥有全部的正…...
webAPP基础学习
###视觉基础 part-I ####1.面试中常见的像素问题 >什么是像素? *1.什么是px? px-虚拟像素,css像素的单位 px是一个相对单位,相对于设备像素而言 >相对性 a.相对于同一个设备,css像素的可变的 css像素物理像素>会受到缩放的影响 css像素缩放倍数*单个物理像…...
RIP路由信息协议
RIP路由信息协议(Routing Information Protocol) 最先得到广泛应用的协议,最大优点是简单要求网络中的每个路由器都要维护一张表,表中记录了从它自己到其他每一个目的网络的距离RIP是应用层协议,它在传输层使用UDP,RIP报文作为UD…...
kubernetes 高可用集群
目录 一、haproxy负载均衡 二、pacemaker高可用 三、部署control-plane 四、部署worker node 实验环境 主机名 IP 角色 docker 192.168.67.10 harbor k8s1 192.168.67.11 control-plane k8s2 192.168.67.12 control-plane k8s3 192.168.67.13 control-plane k8s…...
java实现插入排序
图解 以下是Java实现插入排序的代码: public class InsertionSort {public static void main(String[] args) {int[] arr {5, 2, 4, 6, 1, 3};insertionSort(arr);System.out.println(Arrays.toString(arr)); // output: [1, 2, 3, 4, 5, 6]}public static void i…...
深度学习之基于YoloV5血红细胞检测识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 深度学习已经在许多领域中得到了广泛的应用,包括医疗健康领域。其中,YOLO(You O…...
8、可视化高斯滤波器并完成高斯滤波
本节一起绘制一个可视化的高斯滤波器,同时对一个彩色图像增加高斯噪声,最后通过一个高斯滤波器对图像进行降噪处理。 就像上节说的那样,滤波不是学习重点,下面通过实操了解下原理即可。 可视化高斯滤波器 高斯滤波器符合高斯分布,并且是二维高斯分布,这一点在上一节高斯…...
Linux MMC子系统 - 5.eMMC 5.1工作模式-引导模式
By: Ailson Jack Date: 2023.11.19 个人博客:http://www.only2fire.com/ 本文在我博客的地址是:http://www.only2fire.com/archives/164.html,排版更好,便于学习,也可以去我博客逛逛,兴许有你想要的内容呢。…...
2342. 数位和相等数对的最大和 --力扣 --JAVA
题目 给你一个下标从 0 开始的数组 nums ,数组中的元素都是 正 整数。请你选出两个下标 i 和 j(i ! j),且 nums[i] 的数位和 与 nums[j] 的数位和相等。 请你找出所有满足条件的下标 i 和 j ,找出并返回 nums[i] num…...
linux如何重置root密码
目录 当我们想要重置root管理员密码时,我们可以有两种方法进行: 方法一、init方法 1、重启系统,在下图所示界面按e键 2、随后进入以下界面,、将ro修改为rw,在行末尾添加init/bin/sh。编辑 3、随后按Ctrlx启动到s…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...
Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
