Najmniejsze wyrównane do osi pole zawierające


11

Dane wejściowe: zbiór punktów w R 3 i liczba całkowita k n .nR3kn

Dane wyjściowe: Najmniejsza obwiednia wyrównana do osi, która zawiera co najmniej tych n punktów.kn

Zastanawiam się, czy znane są algorytmy tego problemu. Najlepsze, co mogłem wymyślić, to czas , luźno jak następuje: brutalna siła we wszystkich możliwych górnych i dolnych granicach dla dwóch z trzech wymiarów; dla każdej z tych możliwości O ( n 4 ) możemy rozwiązać odpowiednią 1- wymiarową wersję problemu w czasie O ( n ) za pomocą algorytmu przesuwnego okna.O(n5)O(n4)1O(n)


Nie możemy obliczyć tabelę rozmiarów do liczby punktów p z p . x < x , p . y < y , p . z < z ? Obliczanie liczby punktów i objętości można wykonać za pomocą stałej liczby operacji, a my możemy zastosować programowanie dynamiczne z tabelą wielkości k n 3 i powinniśmy być w stanie uzyskać algorytm O ( k n 3 ) . n3pp.x<x,p.y<y,p.z<zkn3O(kn3)
Kaveh

k=Θ(n)n5n6n5

(1ϵ)kkO(((n/k)/ϵ2logn)O(1))k=Θ(n)

Odpowiedzi:


11

nO(n3)

1/kn/kO((n/k)3)RO(k6logn)czasy. Z dużym prawdopodobieństwem jednym z wypróbowanych pól jest pudełko pożądane.

O((n/k)3k6polylogn)=O(n3k3logO(1)n)

1k6(11/k)k61/k6=pO((1/p)logn)

Θ(n3)

O(n3log2n)


k=Θ(n)O(n3k3)O(n6)k
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.