• Как написать клас PriorityQueue на java?

    sabone
    @sabone
    beginner developer
    Для того, чтобы написать свою реализацию Приоритетной очереди, нужно понять, что она из себя представляет. PriorityQueue wiki

    Если будешь писать, сделай на базе массива и выбери подходящий способ вставки/извлечения элементов (перейди по ссылке и найдешь).
    Ответ написан
    Комментировать
  • Я написал код и мне нужно дописать класс PriorityQueue но я незнаю правильно ли я написал класс?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!

    но я не знаю правильно ли я написал класс - подскажите пожалуйста.

    Ну в принципе код рабочий. Другое дело, что поведение кода может отличаться от ожидаемого вами. Тут не подскажу, ибо не знаю вашей конечной цели.

    Что касается кода:
    public class Main {
        public static class PriorityQueueExample {

    Это конечно не ошибка, но и смысла в данном случае в статичном классе не вижу.
    Можно удалить класс Main
    public class PriorityQueueExample {

    PriorityQueue<Integer> PQueue = new PriorityQueue<>();

    Названия переменных согласно naming convention с маленькой буквы. Например, pQueue, а еще лучше, если они будут осознанными (читаемыми). Например, вместо PQueue2 использовать carQueue или carModelQueue и т.д.

    PQueue2.add("BMW");
                PQueue.add(25);
                PQueue2.add("Mazda");
                PQueue.add(35);
                PQueue2.add("Tesla");
    
                PQueue.remove(10);
                PQueue2.remove("Tesla");

    Вы добавили 2 элемента Mazda & Tesla, 25 & 35, но удаляете элемент, которого нет в очереди (10, Tesla). Точнее вы добавили Tesla, а 10 не добавили. Возможно, что это просто упущение.

    Возможно, что если увижу задание (задачу), то смогу точно сказать, насколько корректно вы реализовали его
    Ответ написан
    2 комментария