Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2012, 13:37   #1
m9yt
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 108
По умолчанию Очередь с приоритетом

Добрый день. Пытаюсь вот понять одну штуку.
У меня есть некий класс - сообщение:
Код:
public class Message<TPriority, TContent> { }
Мне нужно сделать очередь с приоритетом, которая бы работала с этим классом.
Вопрос в том, как я буду сравнивать приоритеты при реализации метода Dequeue, если, допустим, очередь сделана так:
Код:
public class MessageQueue<T> { }
где вместо T у меня будет стоять некий тип.
m9yt вне форума Ответить с цитированием
Старый 01.05.2012, 13:44   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

m9yt

как я буду сравнивать приоритеты при реализации метода Dequeue

доставать приоритет из типа T и сравнивать.
Rififi вне форума Ответить с цитированием
Старый 01.05.2012, 14:01   #3
m9yt
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 108
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
m9yt

как я буду сравнивать приоритеты при реализации метода Dequeue

доставать приоритет из типа T и сравнивать.
Каким образом?
m9yt вне форума Ответить с цитированием
Старый 01.05.2012, 14:48   #4
Reskov
Форумчанин
 
Аватар для Reskov
 
Регистрация: 17.12.2008
Сообщений: 250
По умолчанию

самый простой способ и хороший способ посмотреть реализацию например в c5 http://www.itu.dk/research/c5/ IntervalHeap там класс такой есть, и в примерах Jobqueue.cs пример работы с ним... там тем более Mit лицензия) а так первое что пришло в голову передавать в конструктор IComparer<T> и сравнивать по приоритету
Reskov вне форума Ответить с цитированием
Старый 01.05.2012, 15:13   #5
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Цитата:
очередь сделана так:
А чем Queue<T> не угодила?
=master= вне форума Ответить с цитированием
Старый 01.05.2012, 15:25   #6
Reskov
Форумчанин
 
Аватар для Reskov
 
Регистрация: 17.12.2008
Сообщений: 250
По умолчанию

Цитата:
А чем Queue<T> не угодила?
она же без приоритета вроде
Reskov вне форума Ответить с цитированием
Старый 01.05.2012, 15:54   #7
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

А, ё, какаяж эта тогда очередь, больная какя-то.
=master= вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очередь с приоритетом revaldo666 Общие вопросы C/C++ 4 26.06.2011 21:13
Очередь в СИ Savelia Помощь студентам 4 12.06.2011 14:56
Запуск приложения с приоритетом Shouldercannon Общие вопросы Delphi 19 26.08.2010 15:43
Очередь Си savra Помощь студентам 1 22.04.2010 18:48
Очередь Юлькин Общие вопросы C/C++ 4 30.05.2009 16:00