Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
1 / 1 / 2
Регистрация: 24.06.2014
Сообщений: 90
1

Реализовать Generics очередь

22.01.2016, 14:22. Показов 1760. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Реализовать обобщенную (Generics) структуру данных «очередь», позволяющую хранить объекты (ссылочные переменные). Стандартные классы-коллекции .NET не использовать, в качестве внутренней структуры для хранения данных использовать исключительно массивы.

Помогите плиз. Очень надо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2016, 14:22
Ответы с готовыми решениями:

Реализовать очередь и сделать меню
using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

Помогите реализовать алгоритм (приоритетная очередь)
Очень прошу помочь реализовать этот алгоритм в коде С# приоритетная очередь Open список...

Реализовать дек и очередь через массив
Всем доброго времени суток, делаю лабораторную работу. Задача такая:Реализовать dequeue с помощью...

Реализовать очередь с использованием двух стеков
Задали нам такое задание, перерыл весь интернет, но так и не понял, что от нас требуется :wall:...

1
1151 / 743 / 483
Регистрация: 21.01.2014
Сообщений: 1,903
22.01.2016, 22:31 2
Лучший ответ Сообщение было отмечено hsMapk как решение

Решение

Сломается при 2147483647-ом вызове Enqueue()
C#
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
36
37
38
39
40
41
42
    class SimpleQueue<T> where T : class
    {
        private const int _capasityIncrease = 5;
 
        private T[] _array;
        private int _count;
        private int _head;
        private int _tail;
 
        public int Count { get { return _count; } }
 
        public SimpleQueue()
        {
            _array = new T[5];
            _count = 0;
            _head = 0;
            _tail = 0;
        }
 
        public void Enqueue(T item)
        {
            if (_tail >= _array.Length)
            {
                Array.Resize(ref _array, _array.Length + _capasityIncrease);
            }
            _array[_tail] = item;
            _count++;
            _tail++;
        }
        public T Dequeue()
        {
            if (_count == 0)
            {
                throw new InvalidOperationException("Очередь пуста");
            }
            T item = _array[_head];
            _array[_head] = null;
            _head++;
            _count--;
            return item;
        }
    }
0
22.01.2016, 22:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2016, 22:31
Помогаю со студенческими работами здесь

Как реализовать очередь нескольких потоков?
Здравствуйте, коллеги! Посоветуйте, как мне реализовать очередь нескольких потоков? Мне нужно...

Реализовать очередь с помощью односвязного списка
Утро доброе, есть очередь реализованная с помощью массива. А нужно сделать, с помощью односвязного...

Реализовать очередь
класс figure #pragma once class figure { public: figure(void); virtual ~figure(void);...

Реализовать очередь
Очередь - это устройство для хранения данных, похожее на стек. Отличие в том, что в стеке последний...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru