Тестирование 2-го массива на перколяцию (объединение найти)

У меня 2d массив создан размером N который содержит 1 и 0, представляющие закрытые и открытые пространства соответственно.

Теперь мне нужно проверить массив 2d, чтобы увидеть, просачивается ли он, и я не уверен, как это сделать.

У меня есть следующий код для создания массива и случайного назначения каждой точки 1 или 0.

int** grid = new int*[boardSize];
for (int i = 0; i < boardSize; ++i) {
grid[i] = new int[boardSize];
}

for (int i = 0; i < boardSize; i++) {

for (int j = 0; j < boardSize; j++) {
if (i == 0) {
grid[i][j] = 1;
}
else if (i == boardSize - 1) {
grid[i][j] = 1;
}
else if (j == 0) {
grid[i][j] = 1;
}
else if (j == boardSize - 1) {
grid[i][j] = 1;
}
else
grid[i][j] = random(delta);
}
}

grid[0][enter] = 0;
grid[boardSize - 1][exit] = 0;

Это создаст массив с закрытыми границами (1 с) и поместит 2 случайных точки входа / выхода (0 с) сверху и снизу. Единственная часть, которую я пропускаю — это тест на перколяцию.

Любая помощь приветствуется, спасибо!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]