Правильная структура данных для представления головоломки судоку? т.е. он должен использовать меньше памяти по сравнению с другой используемой структурой данных? - PullRequest
0 голосов
/ 15 июля 2011

Пожалуйста, предложите решение для qn? Правильная структура данных для представления головоломки судоку? т.е. он должен использовать меньше памяти по сравнению с другой используемой структурой данных?

Ответы [ 2 ]

0 голосов
/ 17 июля 2011

Наименьший объем памяти *:

byte puzzle[41];

GET_PUZZLE(x,y) = puzzle[(9*y+x)/2] >> ((9*y+x)%2 * 4) & 0x0F;

Каждое числовое поле хранится в 4 битах - поэтому два числа на байт.

* Только структура данных измерений;не память программы / и т. д. занята большим неэффективным GET_PUZZLE().


Простота использования, ремонтопригодность, скорость и т. д .:

byte puzzle[9][9];

GET_PUZZLE(x,y) = puzzle[x][y]

Что-нибудь вменяемоечеловек будет использовать.К счастью, это тоже самое очевидное.

0 голосов
/ 17 июля 2011

Как насчет byte[81] или byte[9][9]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...