проблема выбора

 
 
 
Сообщения:821
может туплю. пните в нужном направлении.

итак есть список объектов. объект имеет методу возвращающую числовое значение насколько объект подходит для предстоящего задания.
кроме того объект имеет уровень.
задача найти список объектов где и полезноть высокая и уровень поближе к максимуму.
 
 
Сообщения:821
блин, действительно туплю: отсортировать по полезности, взять верхние 10% отсортировать по уровню и взять сверху сколько надо.
 
 
Сообщения:414
написать один компаратор и отсортировать с его помощью
 
 
Сообщения:821
проблема в том, что нет зависимости между полезностью и уровнем. а без этой связи в один проход не выйдет.
 
 
Сообщения:9807
Зависимость и не нужна, если оба поля в доступны из одного объекта, то одного comparator'a должно хватить. Главное - определится с тем какое поле важней и соответственно его первым сравнивать.

Правда, если полезность - это float/double который вычисляется по формуле и соответственно может отличаться тысячными долями, то нужно разнести числа по категориям (хотя бы к int'у прикастовать). Чтоб полезность могла быть одинаковой, иначе сортироваться почти все будет по полезности.
 
 
Сообщения:821
в том то и проблема: одинаковая полезность может быть только как исключение ну или нулевой. а посему в один проход выйдет отсортировать только по полезности, а уровень будет проигнорирован. что неверно.
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет