Nicht wirklich eine Codierung Frage, mehr wie kann ich diese Frage tun, also kein Code-Snippet.Vermeiden von Big Database-Aufruf auf einem laufenden Median
In meiner Datenbank stellen Sie sich eine lange Liste unsortierter Nummern vor.
nums = [9, 12, 15, 18, 22, 100, 1, 4, 3, 2]
Das gibt mir einen Median von 10,5
Aber jetzt meine Liste vorstellen, viel länger ist, [ 9, 12, 15, 18, 22, 100, 1, 4, 3, 2, ......] Und jeden Tag führe ich eine neue Nummer in diese Liste x ein. Die Liste wird in einer Datenbank gespeichert, und ich möchte vermeiden, dass die Datenbank getroffen wird, um alle diese Daten zu erhalten und dann den Median zu berechnen.
Gibt es irgendwelche Tricks, bei denen ich nicht jeden Tag alle Daten aufrufen muss, um den Median für heute zu berechnen, nachdem eine neue Nummer eingeführt wurde?
Danke für jede Idee!
Mögliches Duplikat von [Find running median aus einem Strom von Ganzzahlen] (https: // stackoverflow.com/questions/10657503/find-running-median-von-einem-stream-of-integers) –