Выбор между 1-мерным и 2-мерным массивом [закрыт]

0

Я реализую класс Chessboard для представления шахматной доски. Я должен реализовать преобразования (отражения и вращения) на шахматной доске.

Возможные преобразования включают комбинацию:

 1. Vertical Reflection
 2. Horizontal Reflection
 3. Diagonal Reflection

Таким образом, у нас есть 8 возможных преобразований для шахматной доски.

На шахматной доске есть 64 квадрата [0..63].

Таким образом, чтобы представить итоговые итоговые значения после преобразований 8 * 64 (№ Преобразования * Chessboard_Size).

Существует два основных способа представления преобразованной_архивы с использованием массивов:

One-Dimensional Array with transformed_board[8*64]
Two-Dimensional Array with transformed_board[8][64]

Вопросов:

Which approach is better?
What are the pros and cons of each approach?
How will effect the performance with respect to time factor?
  • 0
    я предложу вам выбрать двухмерное .. таким образом, вы также можете отслеживать движение и ячейку ... но в случае одного измерения отслеживание обоих будет мало типичным .. !!
  • 2
    Они почти одинаковы в памяти. Но 2D-массив может быть лучше, потому что индекс более читабелен.
Показать ещё 1 комментарий
Теги:
arrays
data-structures

1 ответ

1
Лучший ответ

Структура памяти одинакова для обоих, так что на самом деле нет никакой "реальной" разницы. Это просто вопрос, хотите ли вы, чтобы компилятор выполнил расчет смещения для вас или нет, просто перейдите с синтаксисом, который вам больше нравится.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню