В настоящее время у меня есть класс, который имеет 3 связанных списка строк или целых, которые я использую в качестве стека через трио команд addFirst
и removeFirst
.(Воспроизведенный ниже класс)
Я хочу добавить возможность использовать класс вместо очереди с приоритетами.Я знаю, что приоритетная очередь равна , поэтому я ищу простой способ добавления insertWithPriority
и removeNext
.
Интуитивно понятный вариант - перейти из класса 3Вместо этого он связал 3 списка priorityQueues, но я немного запутался, как использовать очереди с приоритетами в java. В частности, , мне нужно, чтобы все 3 работали одинаково, чтобы removeNext удалял те же 3 элемента, которые были добавлены insertWithPriority
.
Может ли кто-нибудь пролить свет на реализациюправильный приоритетQueue?
class ThreeList{
public LinkedList foo;
public LinkedList bar;
public LinkedList etal;
public ThreeList(){
foo= new LinkedList();
bar= new LinkedList();
etal= new LinkedList();
}
public void addLast(String foo, int bar, int etal){
foo.addLast(foo);
bar.addLast(bar);
etal.addLast(etal);
}
public void addFirst(String foo, int bar, int etal){
foo.addFirst(foo);
bar.addFirst(bar);
etal.addFirst(etal);
}
public void removeFirst(){
foo.removeFirst();
bar.removeFirst();
etal.removeFirst();
}
public void removeLast(){
foo.removeLast();
bar.removeLast();
etal.removeLast();
}
}