【C++】图的存储 -- 邻接表

目录

    • 邻接表的创建
    • 使用dfs遍历图
    • dfs遍历图的递归思想

邻接表的创建

请添加图片描述

#include <iostream>
using namespace std;
#include <vector>

struct edge//创建边集类型
{
	int v;//出边
	int w;//权值
};
const int N = 100010;//顶点数量
vector<edge> e[N];//邻接表

int main()
{
	//输入图
	int m;//插入m行有向边
	cin >> m;
	while (m--)
	{
		int a, b, c;
		cin >> a >> b >> c;
		e[a].push_back({ b,c });//存入邻接表
		e[b].push_back({ a,c });//成为无向图
	}
	return 0;
}

使用dfs遍历图

#include <iostream>
using namespace std;
#include <vector>

struct edge//创建边集类型
{
	int v;//出边
	int w;//权值
};
const int N = 100010;//顶点数量
vector<edge> e[N];

bool vis[N];//防止重复遍历点
void dfs(int s)//从某个点开始深搜
{
	vis[s] = 1;//该点已经访问
	for (int i = 0; i < e[s].size(); i++)
	{
		if (vis[e[s][i].v] == 0)//如果终点没访问过,则访问
		{
			cout << s << ' ' << e[s][i].v << ' ' << e[s][i].w << endl;
			dfs(e[s][i].v);//找下一个终点
		}
	}
}

int main()
{
	//输入图
	int m;//插入m行有向边
	cin >> m;
	while (m--)
	{
		int a, b, c;
		cin >> a >> b >> c;
		e[a].push_back({ b,c });
		e[b].push_back({ a,c });
	}
	cout << endl;
	dfs(1);//从一号节点开始遍历
	return 0;
}

请添加图片描述

dfs遍历图的递归思想

大事化小思想图:
请添加图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

淘宝新店有流量扶持吗

淘宝新店有流量扶持 淘宝新店需要做些推广提高店铺权重 淘宝新店用3an推客做推广比较好 3an推客是给商家提供的营销工具&#xff0c;3an推客CPS推广模式由商家自主设置佣金比例&#xff0c;以及设置商品优惠券&#xff0c;激励推广者去帮助商家推广商品链接&#xff0c;按最…

初步认识泛型

文章目录 泛型的编译擦除机制 泛型的上界泛型方法 泛型的编译 擦除机制 泛型到底是怎么编译的&#xff1f;这个问题&#xff0c;也是曾经的一个面试问题。泛型本质是非常难的语法 通过命令&#xff1a;javap -c 查看字节码文件&#xff0c;所有的T都是Object。 在编译的过程当…

“量子谷”启程!数亿资金注入,加速量子、人工智能创新

2024年4月23日&#xff0c;欧洲委员会启动了新一轮“地平线欧洲”&#xff08;Horizon Europe&#xff09;项目征集&#xff0c;动用资金总额超过1.12亿欧元&#xff08;约8.67亿人民币&#xff09;。此次征集活动主要面向人工智能&#xff08;AI&#xff09;与量子技术领域的前…

面试:JVM垃圾回收

一、三种垃圾回收算法 1、标记清除&#xff08;已废弃&#xff09; 找到根对象&#xff08;局部变量正在引用的对象、静态变量正在引用的对象&#xff09;&#xff1b;沿着根对象的引用链&#xff0c;查看当前的对象是否被根对象所引用&#xff0c;若被引用&#xff0c;则加上…

redis和mysql数据一致性方案

请求 A 更新数据 请求B读数据 在高并发情况下&#xff0c;A、B请求过程步骤相互穿插&#xff0c;就会出现图中的问题。 期望redis 的数据是11&#xff0c;最后变成了10 场景&#xff1a;先删除Redis&#xff0c;再更新 MySQL&#xff0c;不主动更新Redis&#xff0c;访问redi…

软件企业质量保证的基石――QA,QC的良性协作

软件企业质量保证的基石――QA、QC的良性协作 国内的软件产业发展了20多年的时间&#xff0c;已经由个人英雄时代步入到中、小团队协作时代。相信不久的将来&#xff0c;国内一定会出现航母级的软件企业&#xff0c;那时候我们会迎来集团军作战的时代。不同的时代表明软件规模…

【AI相关】数学和统计学知识

数学和统计学的知识可以分为两部分&#xff1a; 一部分是线性代数中的基础概念&#xff0c;比如标量、向量和张量。 另一部分是概率统计中常见的分布类型&#xff0c;比如正态分布和伯努利分布。 线性代数 什么是标量&#xff1f; 标量是一个单独的数&#xff0c;可以是整…

PLC基本原理及其接线

目录&#xff1a; 一、PLC的简介与起源 二、PLC的基本结构 1、MCU模块 2、输入与输出模块 3、电源模块 4、编程设备 三、PLC的外部接线 1、PNP与NPN接线 2、三菱PLC的NPN与PNP设置 下续&#xff1a;三菱FX系列PLC-编程1 一、PLC的简介与起源 1、PLC简介 PLC的全称为…

Prompt之美:如何设计提示词让大模型变“聪明”

目录 一. Prompt关键要素 二. Prompt技巧 三. 实战中的Prompt优化 四. 参考文献 一. Prompt关键要素 Prompt是一个简短的文本输入&#xff0c;用于引导AI模型生成特定的回答或执行特定任务。换句话说&#xff0c;Prompt是你与AI模型沟通的方式。一个好的Prompt可以让AI更准…

猫头虎分享已解决Bug || **Error: ‘Promise‘ is undefined**

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

【SpringBoot】00 Maven配置及创建项目

一、Maven配置 1、下载Maven 进入官网下载&#xff1a;Maven – Welcome to Apache MavenMaven – Download Apache Maven 本文以最新版为例&#xff0c;可按需选择版本 Maven – Welcome to Apache Maven 2、解压下载好的安装包 将安装包解压到自己设置的空文件夹中 3、…

抽象的代理模式1.0版本

前言&#xff1a; 在阅读Spring Security官方文档时&#xff0c;里面设计到了一种设计模式——代理模式Proxy 众里寻她千百度&#xff0c;蓦然回首&#xff0c;那人却在灯火阑珊处 开始 在之前的文章里陈述了一个观点——编程语言和语言没有区别 现看看我们日常生活中的代理…

利用 easycode 自动生成 数据库表 对应 类文件

1、安装easycode 打开settings&#xff0c;在plugins中搜索easycode进行安装&#xff0c;安装完成后重启idea。 2、连接数据库 连接数据库&#xff0c;填写数据库配置信息 点解Test connetction测试连接&#xff0c; 3、生成文件 右键数据库表格&#xff0c;生成对应文件 4…

说方法不如传授经验向媒体投稿你可以这样

在信息爆炸的时代,作为单位的信息宣传员,肩负着将本单位的重要资讯、活动成果、政策解读等内容有效传播至公众视野的重任。其中,向各类媒体投稿无疑是实现这一目标的重要途径。然而,传统的邮件投稿方式常常让我深感力不从心,费时费力不说,成功率低、出稿慢等问题更是让我和领导…

商标申请注册交费就一定会下注册证?

近日遇到一个网友说普推知产老杨说&#xff0c;他以为商标交钱就一定会下商标注册证&#xff0c;这个不管找哪家也做不到的。商标申请注册时要给商标局交费用&#xff0c;交完费用商标才有商标的形式审查&#xff0c;通过后下受理书&#xff0c;才有后面商标实质审查&#xff0…

[柏鹭杯 2021]试试大数据分解?

题目&#xff1a;&#xff08;NSSCTF | 在线CTF平台&#xff09; 题目就是如此&#xff0c;我没看到有5个不同的文本&#xff0c;其中最后一个文本以pem后缀&#xff0c;所以我们先来了解一下什么是pem格式。 PEM 格式 PEM格式通常用于数字证书认证机构&#xff08;Certifica…

UI自动化测试框架:PO 模式+数据驱动(超详细)

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 1、PO 设计模式简介 什么是 PO 模式&#xff1f; PO&#xff…

雅特力AT32F435学习——2.ADC实验

ADC实验 ADC是什么、重要性就不再这里多说&#xff0c;ADC这个外设以及关于ADC的应用程序用途非常之广泛很值得深挖&#xff0c;接下来就让我们学一下雅特力AT32F435单片机的ADC吧。 基础知识 不同厂商的单片机的ADC外设都是有区别的&#xff0c;比如ADC转换位数、采样频率等…

【SpringCloud】OpenFeign高级特性

【SpringCloud】OpenFeign高级特性 文章目录 【SpringCloud】OpenFeign高级特性1. 超时控制1.1 全局配置1.2 指定配置 2. 重试机制3. 替换Http客户端3.1 引入依赖3.2 配置 4. 请求/响应压缩5. 日志打印6. 综合配置 1. 超时控制 默认OpenFeign客户端等待60秒钟&#xff0c;但是服…

传承汉字,发扬光大!让《米小圈动画汉字》也出一份力吧!

目前社会上出现的诸如“计算机是汉字的掘慕人”、“汉字是行将就木的老人”“必须废除汉字,汉字要走拼音化迷路”等观点,值得重视。专家们说,20年前如提汉字要走拼音化道路,主要是缘于汉字难以输入电脑,而时至今日,汉字在电脑上早已畅通无阻,如果仍坚持“汉字拙劣,必得用拼音文…