Я работаю над этим кодом для построения лабиринта с использованием структуры данных непересекающихся наборов в Java. Я получаю сообщение об ошибке («ожидается класс, интерфейс или перечисление»), начиная //Создание лабиринта с использованием структуры данных Disjoint Set для завершения. Кто-нибудь может мне помочь?
//Implementation of Disjoint Set
public class DisjSet {
private int[] set;
private int[] sizes;
private int size;
public DisjSet(int size) {
this.set = new int[size];
for (int i = 0; i < size; i++) { this.set = i; }
this.sizes = new int[size];
for (int i = 0; i < size; i++) { this.sizes = 1; }
this.size = size;
}
public int find(int item) {
int root = item;
// find the root
while (set[root] != root) {
root = set[root];
}
// now shorten the paths
int curr = item;
while (set[curr] != root) {
set[curr] = root;
}
return root;
}
public int join(int item1, int item2) {
int group1 = find(item1);
int group2 = find(item2);
--size;
if (sizes[group1] > sizes[group2]) {
set[group2] = group1;
sizes[group1] += sizes[group2];
return group1;
} else {
set[group1] = group2;
sizes[group2] += sizes[group1];
return group2;
}
}
}
//Building maze using Disjoint Set data structure
Maze createRandomMaze(int rows, int columns) {
Maze maze = new Maze(rows, columns);
// create all walls
List walls = maze.getAllInnerWalls();
// remove all the walls you can
DisjSet diset = new DisjSet(rows*columns);
while (diset.size() > 1) {
int wallIndex = random.nextInt(walls.size());
int cell1 = walls.get(wallIndex).cell1;
int cell2 = walls.get(wallIndex).cell2;
if (diset.find(cell1) != diset.find(cell2)) {
// we can remove the wall
maze.removeWall(walls.get(wallIndex));
diset.join(cell1, cell2);
}
walls.remove(wallIndex);
}
return maze;
}
Подробнее здесь: https://stackoverflow.com/questions/474 ... or-in-java
Ошибка «Ожидается класс, интерфейс или перечисление» в Java ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1769077280
Anonymous
Я работаю над этим кодом для построения лабиринта с использованием структуры данных непересекающихся наборов в Java. Я получаю сообщение об ошибке («ожидается класс, интерфейс или перечисление»), начиная //Создание лабиринта с использованием структуры данных Disjoint Set для завершения. Кто-нибудь может мне помочь?
//Implementation of Disjoint Set
public class DisjSet {
private int[] set;
private int[] sizes;
private int size;
public DisjSet(int size) {
this.set = new int[size];
for (int i = 0; i < size; i++) { this.set[i] = i; }
this.sizes = new int[size];
for (int i = 0; i < size; i++) { this.sizes[i] = 1; }
this.size = size;
}
public int find(int item) {
int root = item;
// find the root
while (set[root] != root) {
root = set[root];
}
// now shorten the paths
int curr = item;
while (set[curr] != root) {
set[curr] = root;
}
return root;
}
public int join(int item1, int item2) {
int group1 = find(item1);
int group2 = find(item2);
--size;
if (sizes[group1] > sizes[group2]) {
set[group2] = group1;
sizes[group1] += sizes[group2];
return group1;
} else {
set[group1] = group2;
sizes[group2] += sizes[group1];
return group2;
}
}
}
//Building maze using Disjoint Set data structure
Maze createRandomMaze(int rows, int columns) {
Maze maze = new Maze(rows, columns);
// create all walls
List walls = maze.getAllInnerWalls();
// remove all the walls you can
DisjSet diset = new DisjSet(rows*columns);
while (diset.size() > 1) {
int wallIndex = random.nextInt(walls.size());
int cell1 = walls.get(wallIndex).cell1;
int cell2 = walls.get(wallIndex).cell2;
if (diset.find(cell1) != diset.find(cell2)) {
// we can remove the wall
maze.removeWall(walls.get(wallIndex));
diset.join(cell1, cell2);
}
walls.remove(wallIndex);
}
return maze;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/47428422/class-interface-or-enum-expected-error-in-java[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия