У меня есть очередь и и массив очередей.buckets
- это массив, а collector
- это очередь.pass
- это целое число, которое сохраняет, который передается.У меня есть метод, который возвращает мне содержимое первой ячейки очереди с именем peek()
.shiftOne()
- это метод, который перемещает голову одной очереди в хвост другой.
Теперь этот код не работает для меня
bucket[((collector.peek()>>(pass * 8)) &0xFF)].shiftOne(collector);
Я прошел шаг за шагом, и этоОказывается, я не маскирую биты должным образом.Я могу сдвинуть их, но это все.Поэтому я попытаюсь получить доступ к элементу 102 для массива из 10 элементов.Что я делаю неправильно?Я знаю peek()
и shiftOne()
, потому что я могу сортировать с использованием степеней и модулей.