当前位置: 首页 > news >正文

841.钥匙和房间

841.钥匙和房间


题目链接:841.钥匙和房间

代码如下:

class Solution 
{
public:bool canVisitAllRooms(vector<vector<int>>& rooms) {vector<bool> visited(rooms.size(),false);dfs(rooms,visited,0);// bfs(rooms,visited,0);for(int i=0;i<visited.size();i++){if(!visited[i]) return false;}return true;}
private://深度遍历void dfs(vector<vector<int>>& rooms,vector<bool>& visited,int key){if(visited[key])    return;visited[key]=true;vector<int> keys=rooms[key];for(int k:keys){dfs(rooms,visited,k);}}//广度遍历void bfs(vector<vector<int>>& rooms,vector<bool>& visited,int key){queue<int> que;visited[key]=true;que.push(key);while(!que.empty()){int cur=que.front();que.pop();vector<int> keys=rooms[cur];for(int k:keys){if(!visited[k]){visited[k]=true;que.push(k);}}}}
};
http://www.lryc.cn/news/346825.html

相关文章:

  • 【OceanBase 系列】—— 什么是冻结和转储
  • 智慧园区能耗管控系统,3D可视化开发都需要哪些技术栈?
  • Spring之推断构造方法源码解析
  • 【计算机网络】计算机网络的定义和分类
  • 天机学堂—学习辅助功能(含场景问答和作业)
  • Stable Diffusion AI绘画
  • linux性能监控之sar
  • react框架对Excel文件进行上传和导出
  • 【前端】-【前端文件操作与文件上传】-【前端接受后端传输文件指南】
  • 【IC前端虚拟项目】验证环境env与base_teat思路与编写
  • 使用Remix部署智能合约到币安链(Remix的操作介绍 币安链合约的部署) 点赞收藏哦
  • 为什么Redis6.0引入了多线程
  • 速盾:高防ip和高防cdn有什么相同点?
  • 设计模式之拦截过滤器模式
  • 【联通支付注册/登录安全分析报告】
  • c++ - 在循环中使用迭代器删除 unordered_set 中的元素
  • 深入了解哈希映射(HashMap)
  • Public Key Retrieval is not allowed
  • iphone进入恢复模式怎么退出?分享2种退出办法!
  • Leetcode 107:二叉树的层次遍历II
  • LNMP一键安装包
  • [机器学习-05] Scikit-Learn机器学习工具包进阶指南:协方差估计和交叉分解功能实战【2024最新】
  • 多线程的情况下 AopContext.currentProxy()切面代理失效问题
  • https://是怎么实现的?
  • Linux无root配置Node,安装nvm
  • 蛋糕店做配送小程序的作用是什么
  • 重写muduo之TcpServer
  • 腾讯云服务器之ssh远程连接登录及转发映射端口实现内网穿透(实现服务器访问本地电脑端口)
  • oracle 9i 行头带有scn的表
  • MySql#MySql安装和配置