Hallo,
ich muss einen Algorithmus entwickeln ,der in einem Array der Länge n und einer Zahl k mit 1<=k<=n , die k Zahlen mit der geringsten Absolutdifferenz zum Median bestimmt. In der linearen Komplexität von O(n).
Hab schon die Suche und Google benutzt, aber nichts braubares gefunden.
Also einfach den Medien bestimmen und dann jeden Wert im Array von ihm subtrahieren und dann den Lösungsarray sortiern geht nicht, weil ich dann dann der Algo mehr als O(n) braucht.
Eine Lösungsstrategie wäre den Mediean per Select Algorithmus in O(n) zu finden, aber was dann müsste ich trotzdem noch mal sortieren und dann wäre es wieder mehr als O(n).
Wie kann ich das realisieren?
ich muss einen Algorithmus entwickeln ,der in einem Array der Länge n und einer Zahl k mit 1<=k<=n , die k Zahlen mit der geringsten Absolutdifferenz zum Median bestimmt. In der linearen Komplexität von O(n).
Hab schon die Suche und Google benutzt, aber nichts braubares gefunden.
Also einfach den Medien bestimmen und dann jeden Wert im Array von ihm subtrahieren und dann den Lösungsarray sortiern geht nicht, weil ich dann dann der Algo mehr als O(n) braucht.
Eine Lösungsstrategie wäre den Mediean per Select Algorithmus in O(n) zu finden, aber was dann müsste ich trotzdem noch mal sortieren und dann wäre es wieder mehr als O(n).
Wie kann ich das realisieren?