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

面试Leetcode - Graph

图(Graph)

图是 点(Vertex / Node)和 边(Edge)组成的结构

树其实是图的特例

树 = 连通且无环的无向图。

存储

邻接表 *

graph = { 0: [1, 2], 1: [0, 3], 2: [0], 3: [1] }

含义:0 与 1、2 相连。

leetcode 一般标准解法都用邻接表

邻接矩阵

0 1 2 3
0 0 1 1 0
1 1 0 0 1
2 1 0 0 0
3 0 1 0 0

适合稠密图

空间 O(n²)

搜索

DFS(深度优先)

一路走到底,再回溯。递归帮你维护“下一步”。

visited = set()

def dfs(u):
visited.add(u)
for v in graph[u]:
if v not in visited:
dfs(v)

BFS(广度优先)

一层一层扩展。队列帮你维护“下一步”。

from collections import deque

queue = deque()

# 起点加入队列
queue.append(start)


while queue:

node = queue.popleft()

# 处理 node

for neighbor in neighbors(node):

queue.append(neighbor)

做题

看到什么词

想到什么

岛屿、区域、省份、连通块

连通性

课程、前置、依赖、任务顺序

依赖关系

最少步数、最短路径

BFS 最短路

带权代价最小

Dijkstra

连通性

两个点能不能互相到达?

Flood Fill / Connected Components

  • LC200 Number of Islands

  • LC695 Max Area of Island

  • LC733 Flood Fill

最短路

BFS lc 994 坏橘子问题

依赖关系

有没有一种合法的执行顺序?

检查图中有没有环 (DFS/BFS 都可以)

step 1 建立邻接表

http://www.cnnetsun.cn/news/3884671.html

相关文章:

  • 2026最新视频重点整理工具口碑推荐 | 经过筛选的实用选择建议
  • 寻找靠谱的阜南网站建设公司指南:如何避免踩坑并打造高转化官网
  • 分式函数值域求解全攻略:四大核心方法与实战避坑指南
  • 母线槽绝缘与外壳系统解析:阻燃绝缘层、铝合金外壳、防护等级工程选型
  • Socket网络编程核心:TCP与UDP协议原理、Go实战与生产环境指南
  • 基于Phi-4架构的多模态推理模型训练实战:从视觉对齐到逻辑推理
  • Spring Boot多模块项目Bean类型冲突:非ASCII模块名引发的类加载器问题解析
  • 基于AI Agent的智能问卷系统:架构设计与高校调研实践
  • 戴尔iDRAC邮箱告警配置全攻略:从SMTP设置到故障排查
  • SIMPACK 2021x在Ubuntu系统上的完整安装与配置指南
  • NAND与NOR Flash坏块管理全解析:从物理原理到工程实践
  • Unity光照原理:从CPU到GPU的数据传递链
  • 第 13 篇 高频SQL优化:深分页、count(*)、filesort 与 join 算法
  • 第 14 篇 主从复制与读写分离:binlog 格式、主从延迟的成因与应对
  • 深入解析Broadcom交换芯片:架构、编程与数据中心应用实践
  • Windows终极卸载指南:彻底移除Microsoft Edge的完整解决方案
  • 阿里云域名注册与解析全流程指南:从查询到配置实战
  • 黄岛网站建设多少钱?揭秘2024年青岛黄岛区企业官网定制的真实价格内幕与避坑指南
  • Ventoy与云固件深度解析:从多系统启动到云端固件架构
  • 如何实现TEMU自动化上架自动化?20核并发不抢焦,单机跑通百店零报错
  • AI Agent性能优化实战:从15秒到2.6秒的响应速度提升
  • 基于改进BOXINST的数字识别算法研究
  • JMeter分布式压测实战:从原理到部署,突破单机瓶颈
  • 哈尔滨网站建设制作哪家好:揭秘本地优质服务商的选择逻辑与避坑指南
  • 以智能为翼,解锁高效生活新范式
  • 揭秘专业网站建设最便宜的真正逻辑与避坑指南,中小企业如何利用低成本实现高回报数字化转型
  • STM32寄存器编程入门:从GPIO原理到底层点灯实战
  • VS Code GitHub Copilot 插件中接入DeepSeek API key
  • 嵌入式C++驱动开发实战与优化技巧
  • 如何在React项目中引入图片:详解多种引入方式与最佳实践