LeetCode 1971. Find if Path Exists in Graph(图的遍历)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

There is a bi-directional graph with n vertices, where each vertex is labeled from 0 to n - 1 (inclusive).
The edges in the graph are represented as a 2D integer array edges, where each edges[i] = [ui, vi] denotes a bi-directional edge between vertex ui and vertex vi.
Every vertex pair is connected by at most one edge, and no vertex has an edge to itself.

You want to determine if there is a valid path that exists from vertex start to vertex end.

Given edges and the integers n, start, and end, return true if there is a valid path from start to end, or false otherwise.

Example 1:
在这里插入图片描述

Input: n = 3, edges = [[0,1],[1,2],[2,0]], 
start = 0, end = 2
Output: true
Explanation: There are two paths from vertex 0 to vertex 2:
- 012
- 02

Example 2:
在这里插入图片描述

Input: n = 6, edges = [[0,1],[0,2],[3,5],[5,4],[4,3]], 
start = 0, end = 5
Output: false
Explanation: There is no path from vertex 0 to vertex 5.Constraints:
1 <= n <= 2 * 10^5
0 <= edges.length <= 2 * 10^5
edges[i].length == 2
1 <= ui, vi <= n - 1
ui != vi
1 <= start, end <= n - 1
There are no duplicate edges.
There are no self edges.

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-if-path-exists-in-graph
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 图的遍历,BFS、DFS都可以
class Solution:def validPath(self, n: int, edges: List[List[int]], start: int, end: int) -> bool:from queue import Queueg = [[] for _ in range(n)]for e in edges:g[e[0]].append(e[1])g[e[1]].append(e[0])vis = [0]*nq = Queue()q.put(start)vis[start] = 1while not q.empty():id = q.get()if id == end:return Truefor nid in g[id]:if vis[nid] == 0:vis[nid] = 1q.put(nid)return False

312 ms 66.1 MB Python3


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

月之数

月之数 Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 65 Accepted Submission(s) : 35 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 当寒月还在读大一的时候&#xff0…

更新wpscan_wpscan扫描工具

简介WPScan是一个扫描WordPress漏洞的黑盒子扫描器&#xff0c;可以扫描出wordpress的版本&#xff0c;主题&#xff0c;插件&#xff0c;后台用户以及爆破后台用户密码等&#xff0c;Kali Linux默认自带了WPScan&#xff0c;也可以到Github项目仓库[1]中下载安装&#xff0c;其…

android monkey压力测试,Android-Monkey 压力测试

1.Monkey 介绍Monkey是Android中一个对App进行压力测试的命令行工具&#xff0c;可以向系统发送伪随机的用户事件流对正在开发的App进行压力测试(模拟用户操作App)。压力测试主要是为了提高App的稳定性、和用户留存率。Monkey功能强大&#xff0c;主要包含三个部分&#xff1a;…

LeetCode 1974. 使用特殊打字机键入单词的最少时间

文章目录1. 题目2. 解题1. 题目 有一个特殊打字机&#xff0c;它由一个 圆盘 和一个 指针 组成&#xff0c; 圆盘上标有小写英文字母 ‘a’ 到 ‘z’。 只有 当指针指向某个字母时&#xff0c;它才能被键入。指针 初始时 指向字符 ‘a’ 。 每一秒钟&#xff0c;你可以执行以…

vue弹出alert_vue+webpack 实现简单的弹窗(alert)组件

话不多说&#xff0c;下面是alert组件的代码(需要引用node-sass sass-loader scss-loader&#xff0c;主要是为了用scss样式)提示{{message}}{{negativeText}}{{positiveText}}export default {name: my-alert,props: {isShow: {type: Boolean,default: false},negativeText:{t…

android studio有错误,清单合并失败,Android Studio中出现多个错误

因此&#xff0c;我是Android和Java的初学者。我刚刚开始学习。今天我在尝试Intent时&#xff0c;发生了一个错误。Error:Execution failed for task :app:processDebugManifest.> Manifest merger failed with multiple errors, see logs我在这里找到了一些解决方案&#x…

LeetCode 1979. 找出数组的最大公约数

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 nums &#xff0c;返回数组中最大数和最小数的 最大公约数 。 两个数的 最大公约数 是能够被两个数整除的最大正整数。 示例 1&#xff1a; 输入&#xff1a;nums [2,5,6,9,10] 输出&#xff1a;2 解释&#xff1a; nums 中…

BZOJ 1529: [POI2005]ska Piggy banks( 并查集 )

每一连通块砸开一个就可以拿到所有的钱, 所以用并查集求连通块数 -------------------------------------------------------------------#include<bits/stdc.h>#define rep(i, n) for(int i 0; i < n; i)#define clr(x, c) memset(x, c, sizeof(x))using namespace …

horizon流程图_项目实施流程和规范模板(测试方向)

转自&#xff1a;http://blog.51cto.com/xqtesting/20523121. 简介1.1 编写背景随着公司业务的快速发展&#xff0c;技术部面临的基础技术研发、客户系统建设、新产品研发、老旧系统改造等各类建设项目越来越多。但在众多技术人员参与、并发项目交互的情况下&#xff0c;如何定…

android menu xml 属性,Android中Menu类型及常见属性说明

Android系统里面有3种类型的菜单&#xff1a;options menu&#xff0c;contextmenu&#xff0c;sub menu。一、optionsmenu按Menu键就会显示&#xff0c;用于当前的Activity。它包括两种菜单项&#xff1a;因为options menu在屏幕底部最多只能显示6个菜单项&#xff0c;这些菜单…

LeetCode 1980. 找出不同的二进制字符串

文章目录1. 题目2. 解题1. 题目 给你一个字符串数组 nums &#xff0c;该数组由 n 个 互不相同 的二进制字符串组成&#xff0c;且每个字符串长度都是 n 。 请你找出并返回一个长度为 n 且 没有出现 在 nums 中的二进制字符串。 如果存在多种答案&#xff0c;只需返回 任意一个…

#时间预测算法_改进的智慧交通系统出行时间预测算法

引用Chowdhury N K, Leung C K S. Improved travel time prediction algorithms for intelligent transportation systems[C]//International Conference on Knowledge-Based and Intelligent Information and Engineering Systems. Springer, Berlin, Heidelberg, 2011: 355-3…

Navicat for MySQL数据库管理工具

官网下载地址&#xff1a;http://www.navicat.com/download/navicat-for-mysql //如图所示成功建立连接 Host Nmae/Ip Adress:localhost为本地连接&#xff0c;建立远程数据库连接时设置对应ip即可。 1&#xff09;.新建表插入中文数据可以出现&#xff1a; 导致程序直接关闭&a…

LeetCode 1981. 最小化目标值与所选元素的差(DP)

文章目录1. 题目2. 解题1. 题目 给你一个大小为 m x n 的整数矩阵 mat 和一个整数 target 。 从矩阵的 每一行 中选择一个整数&#xff0c;你的目标是 最小化 所有选中元素之 和 与目标值 target 的 绝对差 。 返回 最小的绝对差 。 a 和 b 两数字的 绝对差 是 a - b 的绝对…

android c 11 编译,Android NDK r9b和编译C 11

对不起,以下应该是评论,而不是回答 – 因为我不知道你的代码有什么问题,但是你可以做些什么来弄清楚自己&#xff1a;这是我最小的Android.mk&#xff1a;LOCAL_PATH : $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE : hello-jniLOCAL_SRC_FILES : HelloJni.cppLOCAL_LDLIB…

hdu 5312 数学

转载于:https://www.cnblogs.com/cnblogs321114287/p/4676747.html

协程asyncio_Asyncio深入浅出

Asyncio是一个异步编程的框架&#xff0c;可以解决异步编程&#xff0c;协程调度问题&#xff0c;线程问题&#xff0c;是整个异步IO的解决方案。在学习asyncio之前&#xff0c;我们先来理清楚同步/异步的概念&#xff1a;同步是指完成事务的逻辑&#xff0c;先执行第一个事务&…

android qml 菜单,QML - ListView项目,用于显示菜单

当用户点击项目时&#xff0c;我正在寻找关于在列表项目下显示菜单的一些提示和指示 .如果我有这样的ListModel&#xff1a;ListModel {ListElement {name: "Bill Smith"number: "555 3264"}ListElement {name: "John Brown"number: "555 8…

随笔2

目前三件事 1.去除强迫思维 2.追女生 3.工作 这三件对于我来说都是非常困难的&#xff0c;慢慢的解决&#xff0c;不急&#xff0c;一定要坚持&#xff0c;不管遇到什么困难。。。转载于:https://www.cnblogs.com/zzyoucan/p/4678466.html

python 迭代器、生成器、yield、iter

文章目录1. 迭代器2. 生成器3. 标准库3.1 过滤3.2 映射3.3 合并3.4 排列组合3.5 重新排列4. yield from5. 可迭代的归约函数6. iter 还可以传入2个参数7. 生成器当成协程learn from 《流畅的python》 1. 迭代器 所有生成器都是迭代器&#xff0c;因为生成器完全实现了迭代器接…