¿Cómo puedo usar el módulo bisect en las listas que se ordenan descendentemente? por ej.python bisect, ¿es posible trabajar con listas ordenadas descendentes?
import bisect
x = [1.0,2.0,3.0,4.0] # normal, ascending
bisect.insort(x,2.5) # --> x is [1.0, 2.0, 2.5, 3.0, 4.0] ok, works fine for ascending list
# however
x = [1.0,2.0,3.0,4.0]
x.reverse() # --> x is [4.0, 3.0, 2.0, 1.0] descending list
bisect.insort(x,2.5) # --> x is [4.0, 3.0, 2.0, 1.0, 2.5] 2.5 at end, not what I want really
Los únicos métodos son insort (insort_right) o insort_left - ninguno de los cuales el trabajo para mí. ¿Alguna sugerencia? gracias
Los métodos en bisect debe tener un " parámetro cmp ", como sort(), pero no es así. –
No, deberían tener un parámetro 'clave'. –
¿has mirado 'deque'? Bisect también funciona con deque. Te permite mostrar el primer elemento de la lista, ¿es esto lo que quieres? – hansaplast