Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Алгоритм расстановки приоритетов


Автор: posmotret 8.8.2011, 11:11
Здравствуйте!
Задача такая: есть n-эллементов...пользователь должен поставить приоритет каждому эллементу...что бы не нагружать его (пользователя) планирую выводить на экран вопрос: "какой из 2х элементов важнее ?" на основе этих вопросов определить приоритеты...
Пример:
1й эллемент: ВАЗ (приоритет 0,1)
2й эллемент: Мерседес (приоритет 0,3)
3й эллемент: БМВ (приоритет 0,2)

Спрашиваем у пользователя: что важнее ВАЗ или Мерседес ?
он отвечает: Мереседес:
1й эллемент: Мерседес
2й эллемент: ВАЗ
3й эллемент: БМВ

Второй вопрос что важнее ВАЗ или БМВ ?
ответ БМВ:
1й эллемент: Мерседес
2й эллемент: БМВ
3й эллемент: ВАЗ

пока в голову пришло только сравнивать каждый с каждым...есть ли способ более оптимальный ? оптимальный в том плане что бы пользователю как можно меньше нужно было отвечать, уже для 5ти эллементов количество вопросов будет около 10 (если я правильно посчитал). Спасибо.

Автор: maxim1000 8.8.2011, 11:37
можно вызвать std::sort, а в предикате спрашивать пользователя smile

вот только я бы не советовал делать такой пользовательский интерфейс
пользователи гораздо лучше себя чувствуют, когда они управляют программой, а не программа ними
поэтому, ИМХО, банальный список с возможностью перетаскивания будет более удобен

Автор: Silent 8.8.2011, 11:44
Третий том Кнута вам в помощь  smile 
Есть такая вещь как сортировка, и оценка количеств сравнений элементов - смотрите теорию, выбирайте понравившийся алгоритм

Автор: posmotret 8.8.2011, 12:07
maxim1000

спасибо, наверное будет даже 2 интерфейса...

А если я не на сях пишу...а на пхп не раскроете мне сам алгоритм ?

Автор: nworm 8.8.2011, 12:43
Цитата

А если я не на сях пишу...а на пхп не раскроете мне сам алгоритм ? 


asort

Автор: posmotret 8.8.2011, 13:29
спасибо

Автор: _Y_ 9.8.2011, 22:26
Возможность сортировки всего списка еще и тем хороша, что человек, даже в меру умный, интуитивно выбирает более-менее оптимальный алгоритм сортировки.

ОФФ: Анекдот:
- Как занять блондинку минут на сорок?
- Возьми лист бумаги и напиши с обеих строн "переверни".

Автор: _Y_ 12.8.2011, 17:32
Еще подумал - при сортировке предоставлением парных выборов пользователь будет постоянно зацикливаться

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)