Добро пожаловать. У меня есть метод сортировки по основанию, который использует массив, чтобы пройти, но должен иметь другой массив (мусорное ведро), который будет хранить в пустой очереди. Я запутался в том, как сделать очередь за мусорными ведрами. У меня также есть метод findPlace, который находит место каждой цифры при вызове. Итак, вот что я получил. Может ли кто-нибудь помочь мне найти то, что мне не хватает? Большое спасибо за ваше время.
public static void radix(int [] list){
int [] bin = new int[10];
ArrayQueue<Integer> part = new ArrayQueue<Integer>(); // EDIT What would I do with this queue??
int num = 0;
for(int i=0;i<list.length;i++)
{
bin[i] = 0;
}
for(int pass=0;pass<list.length;pass++)
{
for(int num=0;num<list.length;num++)
{
int digit=findPlace(bin[pass], num);
}
bin[digit].add(list[num]); // add to the bin
}
// Put back into list
for(int h=0; h<10; h++)
{
while(!bin[h].isEmpty())
{
list[num] = bin[queueNum].remove();
num++;
}
}
}
public static int getPlace (int x, int place)
{return x/place % 10;}
Я также создал метод для поиска сегмента, так что мне просто нужно знать, как поместить его в массив, я бы просто сделал это? part.add (getPlace (x, place));?