Трехмерный массив в Dictinary<.> - C#

Узнай цену своей работы

Формулировка задачи:

Хочу преборазовать массив 26*26*26 в dicrtinary. Только с указателем проблема. Допустим, получить указатель для dictinary key я могу так:
key = (a<<16) |(b<<8) | c
А как потом, зная key, мне получить a,b,c? Мне эти значения быстро нужны. Совсем забыл сказать. Числа a,b,c лежат в диапазоне от 0 до 26 включительно. Желетально решить проблему с использованием битовых операций без умножения и сложения, так как битовые операции более просты для процессора

Решение задачи: «Трехмерный массив в Dictinary<.>»

textual
Листинг программы
key = (a << 16) | (b << 8) | c;
            
a = key >> 16 & 0xFF;
b = key >>  8 & 0xFF;
c = key >>  0 & 0xFF;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.4 из 5