014:岛屿数量

LeetCode 200 https://leetcode.cn/problems/number-of-islands/description/ 难度:中等 本题是一道图论 DFS 的题目。初始图中的陆地为 1,水为 0。当我们遍历陆地的时候,将遍历过的陆地改为 2,以防止重复访问。 遍历整张图,如果发现 grid[i][j] == 1,说明这是一块没被访问过的岛屿,dfs(i, j),岛屿数量加一。 时间复杂度:O(mn),其中 m 和 n 分别为 grid 的行数和列数。 空间复杂度:O(mn)。最坏情况下,递归需要 O(mn) 的栈空间。 ...

六月 28, 2025 · Cassius

三色标记法求拓扑排序

本文介绍用三色标记法求拓扑排序。例题:LeetCode 210 课程表 II。 ...

五月 14, 2024 · Cassius

Floyd全源最短路算法

之前介绍了 Dijkstra 单源最短路算法,本文介绍 Floyd 全源最短路算法。例题: LeetCode 1334 阈值距离内邻居最少的城市。 ...

四月 14, 2024 · Cassius

并查集

并查集是一种求图的连通分量数量的算法。 ...

三月 14, 2024 · Cassius

Dijkstra 单源最短路算法

本文介绍一种最常用的求单源最短路的算法 Dijkstra。例题:洛谷 P4779 【模板】单源最短路径(标准版)。 ...

十月 7, 2023 · Cassius