数据结构强化阶段(题目:图相关)

Posted 晨沉宸辰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构强化阶段(题目:图相关)相关的知识,希望对你有一定的参考价值。

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int n, m;
int h[N], e[N], ne[N], idx;
int d[N]; //表示距离
queue<int> vis;
void add(int a, int b)

    e[idx] = b, ne[idx] = h[a], h[a] = idx++;

int bfs()

    memset(d, -1, sizeof(d)); //距离初始化-1
    d[1] = 0;
    vis.push(1); //1号节点进队
    while (!vis.empty())
    
        int t = vis.front();
        vis.pop();
        for (int i = h[t]; i != -1; i = ne[i]) //扩展一层
        
            int j = e[i];
            if (d[j] == -1) //表示这个点没被遍历到过
            
                d[j] = d[t] + 1;
                vis.push(j);
            
        
    
    return d[n];

int main()

    cin >> n >> m;
    memset(h, -1, sizeof(h));
    for (int i = 0; i < m; i++)
    
        int a, b;
        cin >> a >> b;
        add(a, b);
    
    cout << bfs() << endl;
    return 0;

以上是关于数据结构强化阶段(题目:图相关)的主要内容,如果未能解决你的问题,请参考以下文章

数据结构强化阶段(题目:图相关)

机器学习/人工智能的笔试面试题目——强化学习相关面试

详解图神经网络凸优化贝叶斯强化学习等 4 大主题!

强化工程项目管理,打造专业化队伍

10.1综合强化刷题 Day2 morning

强化学习阶段总结