Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
3 / 3 / 0
Регистрация: 31.10.2012
Сообщений: 142

Очередь. Можно ли оптимизировать код?

10.10.2013, 21:06. Показов 987. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, ув. форумчани.
Сегодня понял что не могу написать очередь на яве. Вернее сказать могу, но совсем не элегантно. Потратив 2-3 часа, я получил, как мне кажется довольно красивый код. Хочу чтобы Вы оценили возможно ли это было сделать как-нибудь более красиво?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//очередь FIFO
public class Queue {
    private Node head;
    private static Node tail;
    
    //указатель
    private class Node{
        Object value;
        Node next;
        
        public Node( Object value){
            this.value = value;
        }   
    }
    //push
    private void enqueue(Object value){
        if(head==null){
            head = new Node(value);
            tail = head;
            return;
        }
            tail.next = new Node(value);
            tail = tail.next;
    }
    
    //pop
    private Object dequeue(){
        if(head==null){
            return null;
        }
        Object value = head.value;
        head = head.next;
        return value;
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.10.2013, 21:06
Ответы с готовыми решениями:

Можно ли оптимизировать код?
День добрый! Задача: есть полубайтовые значения - машина выдает данные от 1 до 15. Хранятся и передаются они в упакованном виде, по два...

Можно ли оптимизировать код
Доброго вечера. Есть небольшой кусок кода, можно ли как-то его упростить? (потому что идет дубляж кода, а это не очень правильно, но в то...

Можно ли оптимизировать приведенный код
Понимаю, что нужно создать ещё одно измерение массива, но боюсь, что я уже и в этом запутался. ... byte mac10 = new...

7
78 / 78 / 9
Регистрация: 28.10.2011
Сообщений: 219
10.10.2013, 21:36
Цитата Сообщение от Flash_2oo9 Посмотреть сообщение
private static Node tail;
Может что не понимаю, но зачем tail - static?
1
3 / 3 / 0
Регистрация: 31.10.2012
Сообщений: 142
10.10.2013, 22:47  [ТС]
да действительно)
надо исправить)
0
Так говорил Заратустра...
 Аватар для alex120
62 / 47 / 6
Регистрация: 19.01.2012
Сообщений: 162
Записей в блоге: 6
10.10.2013, 22:57
http://www.java2s.com/Code/Jav... ucture.htm

Думаю, будет полезно.
Та и вообще там весь раздел Queue довольно интересный для изучения.
1
10 / 10 / 6
Регистрация: 16.10.2013
Сообщений: 72
27.03.2014, 21:59
Спасибо за код, очень помог. Но как в данной программе реализовать вывод очереди?
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
28.03.2014, 06:11
Flash_2oo9, а очередь почему не параметризированная? это ж разные классы пихать туда можно, а потом радостно смотреть как летят Exception's
1
78 / 78 / 9
Регистрация: 28.10.2011
Сообщений: 219
28.03.2014, 19:39
Цитата Сообщение от tankomaz Посмотреть сообщение
а очередь почему не параметризированная?
А может человек на Java 1.4 пишет очередь
0
237 / 236 / 72
Регистрация: 02.07.2013
Сообщений: 881
28.03.2014, 21:17
согласен с tankomaz.
Сразу бросается в глаза - много обжектов.

Дженерики , парам-типы классная штука.
Вроде как и связывает по рукам и ногам, но в то же время убирает лишние кастинги и проверки и
большинство эксепшенов уже на стадии компиляции можно будет убрать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.03.2014, 21:17
Помогаю со студенческими работами здесь

Можно ли оптимизировать данный код?
Есть задача: Прочитать шифр: Решил вот так: k = 0 aList = for s in "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr...

Как можно оптимизировать код?
#include <iostream> #include <algorithm> #include <vector> using namespace std; int main() { int n, temp; cin>>n; ...

Как можно оптимизировать код?
Здравствуйте, помогите пожалуйста ускорить работу программы. Программа читает журнал событий винды, и выводит в gridControl. На...

Как можно оптимизировать код?
#include <stdio.h> unsigned int A; int main(){ int i,p; p=6; for(i=5;i>=0;i--){ __asm{ //if(i<3) cmp ...

Как можно оптимизировать код?
Здравствуйте! Столкнулся с проблемой. VBA стал ругаться на сильно длинный код. Надо его оптимизировать, а как сделать не знаю....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru