Я пытаюсь быстро обнаружить коллизии между BitArrays в С# (используя логическую операцию AND), в результате чего один BitArray представляет перекрывающуюся область.
Очевидно, что если результирующий массив состоит только из нулей, коллизии нет. Как это проверить быстрее всего? Простая итерация слишком медленная. Меня не волнует, где коллизии и сколько их — только то, что где-то в массиве есть ненулевое значение.
Кажется, должен быть какой-то быстрый случай, например, «приведение всего битового массива к значению int» (что конкретно не сработает, потому что BitArrays имеют переменный размер), но я не могу его понять.
BitArray
в любом случае довольно медленная реализация. - person harold   schedule 13.02.2016