leetcode 841.钥匙和房间

1.题目要求:

2.解题思路:

利用图的深度优先搜索进行遍历

3.解题代码:

cpp 复制代码
class Solution {
public:
    void VisitAllRooms(int v_index,vector<vector<int>>&rooms,vector<bool>& visited){
        //把每一次设立的结点都立标志
        visited[v_index] = true;
        for(int j = 0;j < rooms[v_index].size();j++){
            //如果结点使用过,就不需要再进行遍历了
            if(visited[rooms[v_index][j]] != true){
                int index = rooms[v_index][j];
                VisitAllRooms(index,rooms,visited);
            }
        }
    }
    bool canVisitAllRooms(vector<vector<int>>& rooms) {
        //设立数组为给已经遍历的结点设立标志
        vector<bool> visited;
        visited.resize(rooms.size(),false);
        int v_index = 0;
        //进行深度优先遍历
        VisitAllRooms(v_index,rooms,visited);
        for(int i = 0;i < visited.size();i++){
            if(visited[i] == false){
                return false;
            }
        }
        return true;
    }
};
相关推荐
lingxiao168883 分钟前
双目立体视觉
图像处理·算法·机器学习·计算机视觉
JNU freshman8 分钟前
和为target问题汇总
算法
2401_8590490812 分钟前
MSPM0--Timer(一口一口喂版)
arm开发·单片机·mcu·算法
寂空_17 分钟前
【算法笔记】ACM数论基础模板
c++·笔记·算法
ggabb26 分钟前
当九九乘法口诀“出海”英国:文化碰撞下的数学教育变革
算法
爱coding的橙子33 分钟前
每日算法刷题计划Day7 5.15:leetcode滑动窗口4道题,用时1h
算法·leetcode
wuqingshun3141591 小时前
蓝桥杯 10. 全球变暖
c++·算法·职场和发展·蓝桥杯
阳洞洞1 小时前
leetcode 56. 合并区间
leetcode
手握风云-1 小时前
二叉树深搜:在算法森林中寻找路径
算法
xu_wenming1 小时前
华为Watch的ECG功能技术分析
人工智能·嵌入式硬件·算法