Czy możemy uzyskać posortowaną listę z posortowanej macierzy w


9

Jestem zmieszany. Chcę udowodnić, że problem sortowania macierzy przez , tj. Wiersze i kolumny są w porządku rosnącym, to . Kontynuuję, zakładając, że można to zrobić szybciej niż i próbuję złamać dolną granicę Dla porównań potrzebnych do posortowania m elementów. Mam dwie sprzeczne odpowiedzi:nnΩ(n2)logn)n2)lognlog(m!)

  1. możemy uzyskać posortowaną listę elementów z posortowanej macierzy w /math/298191/lower-bound-for-matrix-sorting/298199?iemail = 1 # 298199n2)O(n2))
  2. nie można uzyskać posortowanej listy z matrycy szybciej niż Ω(n2)log(n)) /programming/4279524/how-to-sort-amxn-matrix-which-has- wszystkie-m-rzędy-posortowane -i-n-posortowane

Który jest prawidłowy?


6
Nawiasem mówiąc, irytuje mnie, gdy widzimy twierdzenia, że ​​„sortowanie to ”, ale które nie określają modelu wejściowego i modelu obliczeniowego. Sortowanie porównawcze to . Sortowanie może być na ogół szybsze, na przykład dla łańcuchów (jeśli jest całkowitą długością wejściową) lub liczb całkowitych (w niektórych modelach obliczeniowych, które pozwalają na operacje arytmetyczne na liczbach całkowitych w czasie). Ω(nlogn)Ω(nlogn)n
David Eppstein,

3
Aby być jeszcze bardziej pedantycznym: Sortowanie porównawcze nie jest , ponieważ sortowanie porównawcze nie jest funkcją od do . Sortowanie wymaga czasu w dowolnym binarnym modelu drzewa decyzyjnego (nie tylko porównań). Ω(nlogn)RRΩ(nlogn)
Jeffε

Odpowiedzi:


15

Dolna granica jest poprawna (2) - nie możesz tego zrobić lepiej niż i (1) jest oczywiście błędne. Najpierw określmy, czym jest posortowana macierz - jest to macierz, w której elementy w każdym rzędzie i kolumnie są sortowane w kolejności rosnącej.Ω(n2)logn)

Łatwo jest teraz sprawdzić, czy każda przekątna może zawierać elementy, które są w dowolnej kolejności - wystarczy, aby były wystarczająco duże. W szczególności sortowanie macierzy oznacza sortowanie każdej z tych przekątnych. th przekątna ma wpisy, a co za tymmożliwe zamówienie. Jako taka, posortowana macierz może zdefiniować co najmniej różne zamówienia. Łatwo jest teraz sprawdzić, czy , co sugeruje, że w modelu porównawczym (i jak wskazuje poniżej Jeff, w każdym binarnym modelu drzewa decyzyjnego) przynajmniej jest to dolna granica w czasie sortowania.jajaja!X=ja=1nja!log2)X=Ω(n2)logn)


3
Ponownie, w każdym modelu drzewa decyzji binarnych, nie tylko porównań.
Jeffε
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.