Existe-t-il un algorithme O (n log n) pour la simplification des lignes 4D?


19

L' algorithme Ramer-Douglas-Peucker pour la simplification de ligne a le pire cas d' exécution . Pour des entrées aléatoires convenablement réparties, il s'est attendu à une complexité d'exécution O ( n log n ) . En 2D, il existe d'autres algorithmes avec la pire complexité d'exécution O ( n log n ) , qui calculent exactement le même résultat que l'algorithme Ramer-Douglas-Peucker. Étant donné que ces algorithmes sont basés sur une structure de données à "trajectoire (convexe) coque", il n'est pas évident qu'ils puissent être généralisés aux lignes 4D.O(n2)O(nlogn)O(nlogn)

Existe-t-il un algorithme (randomisé) qui a (attendu) runtime (indépendant de l'entrée) pour le cas des lignes 4D? Vous pouvez supposer des distances euclidiennes et une tolérance absolue globale.O(nlogn)

Réponses:


0

L'algorithme qui fonctionne avec le cas 4D est décrit dans l'article Algorithmes d'approximation du temps quasi-linéaire pour la simplification des courbes par quatre auteurs: Pankaj K.Agarwal, Sariel Har-Peled, Nabil H. Mustafa et Yusu Wang .

Étant donné une courbe polygonale dans R d et un paramètre ϵ 0 , une simplification ϵ de P avec une taille au plus κ F ( ϵ / 2 , P ) peut être construite en temps O ( n log n ) et O ( n ) espace.PRdϵ0ϵPκF(ϵ/2,P)O(nlogn)O(n)

L'algorithme ne dépend pas des propriétés de monotonie. Il couvre la ligne d'origine avec des disques et recherche la traversée de ligne sur l'ensemble ordonné.


O(nlogn)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.