首页 > 其他分享 >深度优先搜索

深度优先搜索

时间:2024-07-29 14:28:47浏览次数:8  
标签:优先 idx int void ne dfs 搜索 深度 include

树和图的框架

#include<iostream>
#include<algorithm>

using namespace std;

const int N = 10010;
int h[N], e[N], ne[N], idx;

void add(int a, int b) {
	e[idx] = b, ne[idx] = h[a], h[a] = idx++;
}

int main() {
	memset(h, -1, sizeof(h));
}

数和图的深度优先遍历

#include<iostream>
#include<algorithm>

using namespace std;

int n, m;
const int N = 10010;
int h[N], e[N], ne[N], idx;
bool st[N];//存遍历过的点

void add(int a, int b) {
	e[idx] = b, ne[idx] = h[a], h[a] = idx++;
}

void dfs(int u) {
	st[u] = true;
	for (int i = h[u]; i != -1; i = ne[i])
	{
		int j = e[i];
		if (!st[j])dfs(j);
	}
}

int main() {
	memset(h, -1, sizeof(h));

	dfs(1);
}

标签:优先,idx,int,void,ne,dfs,搜索,深度,include
From: https://www.cnblogs.com/windzhao6/p/18330000

相关文章

  • Elasticsearch跨集群搜索
    Elasticsearch(简称ES)是一种基于Lucene的搜索引擎,以其高性能、可扩展性和实时搜索能力而广受欢迎。在大型分布式系统中,跨集群搜索成为了一个重要的需求,它允许用户从多个Elasticsearch集群中联合查询数据,以提高搜索效率和数据一致性。ES|QL(ElasticsearchQueryLanguage)作为一......
  • 深度学习可视化:从数据生成到神经网络训练
    深度学习可视化:从数据生成到神经网络训练,基于make_moons、make_circles、make_blobs一、代码分块解释......
  • OpenAI发布AI搜索引擎SearchGPT,怎么申请?
     北京时间7月26日凌晨,OpenAI正式推出了AI驱动的搜索引擎SearchGPT。与传统搜索引擎相比,在SearchGPT输入查询后,用户将得到一个AI生成的、包含实时网络信息的会话式回答。 SearchGPT的特点直接给出答案使用SearchGPT,你可以像使用其他搜索引擎一样输入查询。但它与传统搜......
  • Gin框架深度解析:构建高性能Go Web应用的基石
    Gin框架深度解析:构建高性能GoWeb应用的基石在当今的Web开发领域,选择一个合适的框架对于项目的成功至关重要。Gin,作为一款用Go(Golang)语言编写的Web框架,凭借其高性能、简洁的API设计以及丰富的特性,迅速在开发者社区中崭露头角。本文将深入解析Gin框架,从其核心特性、工作原理......
  • Vue3 - 最新详细实现安装使用 Google 谷歌地图教程,提供搜索城市名称及地点(搜索关键字
    前言如果您需要Vue2版本,请访问这篇文章。在vue3|nuxt3网站开发中,详解实现接入谷歌google地图申请密钥及相关配置完整流程,附带使用谷歌地图相关功能示例代码,支持地图渲染展示、在地图上标点、全球地图搜索及搜索框相关联想关键词、地图导航、用户当前位置经纬度......
  • 队列和优先队列
    一、队列(queue)    1.队列的概念队列(queue)只允许在队首出元素,队尾进元素。        2.头文件#include<queue>        3.定义及一些常用函数 #include<queue>queue<int>q;q.size()//返回q的长度 q.empty()//返回q是否为空 q.front(......
  • Linkedin 自动化连接机器人与搜索人员
    我确实有一个副业项目,我发现它非常具有挑战性,同时也非常有趣。所以!想法很简单!使用Selenium!登录Linkedln!转到带有您的参数的搜索链接-在我的例子中是技术。招聘人员。每页有10个按钮。按钮的状态为“连接”、“关注”或“消息”目标是每次我检查按钮时,如果它是......
  • 基于深度学习的文本自监督学习
    基于深度学习的文本自监督学习(Self-SupervisedLearning,SSL)是一种利用未标注文本数据通过预任务进行训练,以学习有用的文本表示的方法。自监督学习在自然语言处理(NLP)领域中取得了显著的成果,如BERT、GPT等模型的成功应用,极大地提升了各种下游任务的性能。以下是对这一领域的详......
  • 基于深度学习的音频自监督学习
    基于深度学习的音频自监督学习(Self-SupervisedLearning,SSL)是一种利用未标注的音频数据,通过设计自监督任务进行特征学习的方法。这种方法在需要大量标注数据的音频处理任务(如语音识别、情感分析等)中,能够显著提升模型的性能和泛化能力。以下是对这一领域的详细介绍:1.自监督......
  • (8-6-05)优先级遍历(Priority-based Search)算法:基于tkinter的多算法路径规划程序(5)
    (7)函数breadth_first_search实现了广度优先搜索算法。它使用一个队列来存储待探索的节点,并通过迭代地从队列中取出节点来搜索路径。在搜索过程中,它会调用`add_neighbours`函数来添加节点的相邻节点,并在添加节点后继续搜索。当找到目标节点时,函数会停止搜索,并调用`paint`函数来......