Определение массива bit[] в C#C#

Место общения программистов C#
Ответить
Anonymous
 Определение массива bit[] в C#

Сообщение Anonymous »

В настоящее время я работаю над решением для калькулятора/проверки простых чисел. Алгоритм уже работает и очень эффективен (0,359 секунды для первых 9012330 простых чисел). Вот часть верхнего региона, где всё заявлено:

Код: Выделить всё

const uint anz = 50000000;

uint a = 3, b = 4, c = 3, d = 13, e = 12, f = 13, g = 28, h = 32;
bool[,] prim = new bool[8, anz / 10];
uint max = 3 * (uint)(anz / (Math.Log(anz) - 1.08366));
uint[] p = new uint[max];
Теперь я хотел перейти на следующий уровень и использовать ulong вместо uint, чтобы охватить большую область (вы это уже видите), где я столкнулся с моей проблемой: bool-массивом.
Как всем должно быть известно, bool-массив имеет длину в байт, что требует много памяти при создании массива... Поэтому я ищу более экономичный способ сделать это.
Моей первой идеей было битовый массив -> не байт!

Подробнее здесь: https://stackoverflow.com/questions/222 ... in-c-sharp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»