面试题 04.01. 节点间通路

注意是有向图,用邻接表代替图,dfs或者bfs都可

class Solution {
public:bool findWhetherExistsPath(int n, vector<vector<int>>& graph, int start, int target) {vector<vector<int> > vec(n);for(int i=0;i<graph.size();i++){vec[graph[i][0]].push_back(graph[i][1]);}vector<bool> visit(n, false);// return dfs(vec, visit, start, target);return bfs(vec, visit, start, target);}
private:bool dfs(vector<vector<int> > &vec, vector<bool> &visit, int start, int target){if(start==target) return true;visit[start]=true;for(auto it: vec[start]){if(!visit[it]){if(dfs(vec, visit, it, target)) return true;}}visit[start]=false;return false;}bool bfs(vector<vector<int> > &vec, vector<bool> &visit, int start, int target){queue<int> q;q.push(start);while(!q.empty()){int now = q.front();if(now==target) return true;visit[now]=true;for(auto it: vec[now])if(!visit[it])q.push(it);q.pop();}return false;}
};

面试题 04.01. 节点间通路相关推荐

  1. 程序员面试金典 - 面试题 04.01. 节点间通路(图的遍历)

    1. 题目 节点间通路.给定有向图,设计一个算法,找出两个节点之间是否存在一条路径. 示例1:输入:n = 3, graph = [[0, 1], [0, 2], [1, 2], [1, 2]],st ...

  2. 【IT笔试面试题整理】 二叉树任意两个节点间最大距离

    求一个二叉树中任意两个节点间的最大距离,两个节点的距离的定义是这两个节点间边的个数, 比如某个孩子节点和父节点间的距离是1,和相邻兄弟节点间的距离是2,优化时间空间复杂度. 一种是:经过根节点,此时只 ...

  3. 面试题 04.03. 特定深度节点链表

    面试题 04.03. 特定深度节点链表 思路:层次遍历 /*** Definition for a binary tree node.* struct TreeNode {* int val;* Tr ...

  4. 面试题 02.01. 移除重复节点(链表删除操作模板)

    链表删除操作:(不带头节点的链表,加上虚拟头节点(dummyHead)删除head就不用单独讨论) 增加虚拟头节点和pre指针: 模板: //创建头节点 ListNode *dummyHead=new ...

  5. 数据分析大数据面试题大杂烩01

    互联网:通过埋点实时计算用户浏览频次用优惠券等措施吸引用户,通过历史信息用非智能学习的title方式构造用户画像(抖音,京东) 电信,银行统计营收和针对用户的个人画像:处理大量非实时数据 政府:健康码 ...

  6. 如何在NEO共识节点间分配任务

    作者:Alexey Vanin 任何计算机系统都有监控操作,可能会发送心跳信息.校验和查询及哈希请求等.这些操作在本文中都被统称为任务.在中心化系统中,通常会有一个受认证的节点或节点群组来完成任务.而 ...

  7. C++算法学习(力扣:面试题 04.04 检查平衡性)

    力扣:面试题 04.04 检查平衡性 实现一个函数,检查二叉树是否平衡.在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1. 示例 1: 给定二叉树 [3,9,20,null, ...

  8. 【420天】跃迁之路——程序员高效学习方法论探索系列(实验阶段177-2018.04.01)...

    @(跃迁之路)专栏 专栏调整通知(2018.3.13) 由于SegmentFault对专栏文章内容和格式有一定要求,个人时间精力有限,每天更新的<我爱刷题系列>和<每日项目总结系列& ...

  9. LeetCode 812. 最大三角形面积(再次用到凸包的Andrew算法) / 面试题 04.06. 后继者 / 953. 验证外星语词典

    812. 最大三角形面积 2022.5.15 每日一题 题目描述 给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积. 示例: 输入: points = [[0,0],[0, ...

最新文章

  1. UI设计实战篇——利用Bootstrap框架制作查询页面的界面
  2. Swift 获取渐变色颜色值
  3. Kuebernetes之DaemonSet
  4. springboot 整合jsp过程中的一些问题
  5. flask创建mysql表_MySQL表不是使用Flask和PyMySQL创建的
  6. github authentication设置里,fallback SMS number国家选项里没有中国的问题
  7. 红外线遥控c语言程序,红外遥控的C程序
  8. LeetCode 1554. 只有一个不同字符的字符串(枚举)
  9. java编码问题详解
  10. 【2016年第1期】大数据隐私保护技术综述(下)
  11. android 环形进地图条,easyEcharts折线,柱状,饼图,仪表盘,环形,水球,圆柱,地图纯JS绘制...
  12. 一款支持语音搜索及语音Voip的浏览器
  13. rtl8188ce无线网卡linux驱动,rtl8188ce无线模块驱动移植到arm Linux平台
  14. 设计模式学习 — 代理模式
  15. Google抢Waze:除了地图还有什么?
  16. 梦笔记:又是个次日预言梦
  17. 取消和卸载Office 2010默认安装的微软拼音输入法的方法
  18. 读论文《Multi-Behavior Hypergraph-Enhanced Transformer for Sequential Recommendation》
  19. Ubuntu 开机显示 initramfs 进不了系统
  20. python农历_Python如何实现阳历转阴历的方法分享

热门文章

  1. Linux工作笔记040---Centos8.2安装mysql5.7.18_已经测试成功
  2. STM32工作笔记0020---新建工程模板基于寄存器-M3
  3. 系统安全工作笔记001---zigw挖矿病毒_没想到生产环境给整成矿鸡了_安全意识有待提升....
  4. vc 2010 下打包dll 的问题
  5. phpStudy配置站点 解决You don't have permission to access / on this server
  6. 如何有效的保护计算机,如何保护计算机-20210717095143.pdf-原创力文档
  7. php mysql rpm包_MYSQL RPM包安装
  8. 随想录(B+树的实现)
  9. php画弧,php绘制一条弧线的方法
  10. python随机函数random求最大值_Python遗传算法求一元函数最大值