Was ist der effizienteste Algorithmus, um eine gerade Linie zu finden, die die meisten Punkte durchläuft?

Das problem:

N Punkte gegeben sind, auf eine 2-dimensionale Ebene. Was ist die maximale Anzahl der Punkte auf der gleichen gerade Linie?

Das problem hat O(N2) Lösung: gehen Sie jeden Punkt und die Anzahl der Punkte, die die gleiche dx /dy mit Bezug auf den aktuellen Punkt. Speichern dx /dy Beziehungen in einer hash-map für Effizienz.

Gibt es eine bessere Lösung für dieses problem als O(N2)?

InformationsquelleAutor der Frage Leonid | 2010-11-14

Schreibe einen Kommentar