Quiero implementar una tabla hash en python. En la mesa, un objeto de clase se asociará con el valor de la clave. El problema es que quiero usar el valor clave para encontrar el índice de la clase y actualizarla (lo cual, por supuesto, no es un problema). Pero, ¿qué puedo hacer si quiero ordenar la tabla usando un valor particular de la clase?Diseño de tabla hash Python
Por ejemplo, consideremos, tenemos tres valores: documento_id, puntaje y rango. Hay un "documento" de clase que consiste en "puntaje" y "rango". "document_id" será la clave de la tabla.
Quiero actualizar el "puntaje" de varias entradas de la tabla, usando la clave: "document_id". Pero cuando se realiza la actualización de los puntajes, quiero ordenar la lista/tabla usando el puntaje y asignar el valor del rango a la variable "rango" en base al puntaje actualizado.
¿Alguien puede darme amablemente alguna guía sobre cómo puedo proceder? O tal vez debería simplemente hacer una lista?
El número máximo de elementos de la tabla puede ser de hasta 25000-30000.
Gracias.
Gracias por la respuesta. Pero si trato de actualizar el rango cada vez que actualizo/inserto un documento, ¿no aumentará rápidamente el orden del ciclo, en lugar de una clasificación al final de toda inserción/actualización? No haré nada más con los rangos. Después de clasificarlos, los pondré en un archivo. –
No sé a qué te refieres con "aumenta rápidamente"? Puede agregar un montón de documentos y luego reasignar los rangos de una vez al final. Me equivoqué al hablar de "cada vez que insertas uno". –
Lo siento, si está al final de agregar documentos, entonces está bien. Estaba hablando del tamaño de la mesa. Pensé que si trataba de ejecutar una clasificación cada vez que ingresaba/actualizaba una entrada en una mesa enorme, podría convertirse en un proceso largo. –