Методы были бы точно такими же.Самый быстрый вариант - вычислить CRC в том порядке, в котором вы получаете данные. Таким образом, вам нужно только O(1)
хранилище.
Ваш полином CRC, конечно же, должен учитывать последовательность полученных данных, поэтомуесли у вас есть полином CRC для первых данных MSB, но вы сначала получаете байты с младшим битом, либо переверните байты, либо полином CRC.Самым быстрым вариантом здесь будет обращение полинома CRC, поскольку вы можете сделать это во время компиляции.