Problem Statement"Maximum" Überlappungsintervall Paar in O (nlog (n))
Eingang Satz von n Intervallen zu finden; {[s_1, t_1], [s_2, t_2], ..., [s_n, t_n]}.
Ausgabe Paar Intervalle; {[s_i, t_i], [s_j, t_j]}, mit der maximalen Überlappung zwischen allen Intervallpaaren.
Beispiel
Eingangsintervalle: {[1, 10], [2, 6], [3,15], [5, 9]}
-> Es gibt mögliche 6-Intervall Paare. Unter diesen Paaren, [1,10] & [3,15] hat die größte mögliche Überlappung von 7.
Ausgabe: {[1,10], [3,15]}
Ein naiver Algorithmus eine Brute-Force-Methode sein, bei der alle n Intervalle miteinander verglichen werden, während der aktuelle maximale Überlappungswert verfolgt wird. Die Zeitkomplexität wäre für diesen Fall O (n^2).
Ich konnte viele Verfahren in Bezug auf Intervall Bäume, maximale Anzahl von überlappenden Intervallen und maximaler Satz von nicht-überlappenden Intervallen, aber nichts über dieses Problem finden. Vielleicht wäre ich in der Lage, die in den obigen Algorithmen gegebenen Ideen zu verwenden, aber ich konnte mir keine vorstellen.
Ich habe viele Stunden damit verbracht, eine gute Lösung zu finden, aber ich denke, ich brauche an dieser Stelle Hilfe.
Alle Vorschläge helfen!
Dieses Problem kann mit dem Sweep-Line-Algorithmus in 'O (nlogn)' gelöst werden. – Tempux