heappush например. А как же задать компаратор, если я хочу в хипе хранить не просто числа, а какие-нибудь там объекты например?
Думаю так же через key... https://docs.python.org/3/library/heapq.html В доке тоже про это
в упор не вижу, чтобы heappush поддерживала позиционный аттрибут key
Гм, кстати похоже да. Пардон, зря я написал не проверив( Два варианта, которые полагаю подойдут: А) ввести метод сравнения для объекта (дандер cmp думаю то что надо) Б) заменить обьект кортежем (значение_по_которому_сортируем,объект)
Ну переопредели функции сравнения в классе
Что за cmp? Его ж отменили
ну а если это не класс, а просто dictionary? или tuple? или list?
гм, вроде бы Б выглядит чуточку приличнее, хотя тоже дурь - почему именно нулевой элемент кортежа интерпретируется как ключ?
Да, я сморозил, пардон
Ну питон сравнивает слева направо - по мне так иногда удобно, В одной из минизадач по работе по сути решения сортируются по количеству сущностей в первую очередь и тооько если оно равно - нужно сортировать по второму "качественному" параметру Прост в namedtuple сунул, отсортировал
Обсуждают сегодня