public void calcAdjacencies() {
		for (int i = 0; i < rows * columns; i++) {
			LinkedList<Integer> cells = new LinkedList<Integer>();

			int column = i % columns;
			int row = i / columns;

			if (column > 0) { // left
				cells.add(i - 1);
			}

			if (column < columns - 1) { // right
				cells.add(i + 1);
			}

			if (row > 0) { // up
				cells.add(i - columns);
			}

			if (row < rows - 1) { // down
				cells.add(i + columns);
			}

			adjacencies.put(i, cells);
		}
	}