小编Inf*_*ity的帖子

在二维二进制矩阵中找到岛屿的数量

我正在尝试计算二维二进制矩阵中岛屿的数量(一组连接的 1 形成一个岛屿)。

例子:

[
[1, 1, 0, 0, 0],
[0, 1, 0, 0, 1],
[1, 0, 0, 1, 1],
[0, 0, 0, 0, 0],
[1, 0, 1, 0, 1]
]
Run Code Online (Sandbox Code Playgroud)

在上面的矩阵中有5个岛,它们是:

First: (0,0), (0,1), (1,1), (2,0)
Second: (1,4), (2,3), (2,4)
Third: (4,0)
Fourth: (4,2)
Fifth: (4,4)
Run Code Online (Sandbox Code Playgroud)

为了计算 2D 矩阵中岛屿的数量,我假设矩阵是一个 Graph,然后我使用 DFS 类型的算法来计算岛屿。

我正在跟踪 DFS(递归函数)调用的数量,因为图中会有很多组件。

下面是我为此目的编写的代码:

# count the 1's in the island
def count_houses(mat, visited, i, j):
    # base case
    if i < 0 or i >= len(mat) or …
Run Code Online (Sandbox Code Playgroud)

python algorithm graph matrix

4
推荐指数
2
解决办法
2825
查看次数

'println()'是PrintStream类或实例成员函数的静态成员函数吗?

这里:

System.out.println("Hi, this is frist program");
Run Code Online (Sandbox Code Playgroud)

是类或实例成员函数println()的静态PrintStream成员函数吗?

正如我的老师所说:当.类名后面有dot()时,我们肯定会尝试访问该类的静态成员.

这里是静态引用变量,它引用了PrintStream类.所以我的问题是,println()函数必须是一个静态成员函数吗?

java

3
推荐指数
1
解决办法
1265
查看次数

标签 统计

algorithm ×1

graph ×1

java ×1

matrix ×1

python ×1