To, co robisz, to bardzo wygodne nadużycie notacji.
Niektórzy pedanci powiedzą, że to, co piszesz, to bzdury, ponieważ oznacza zbiór i nie możesz wykonywać na nich operacji arytmetycznych tak, jak robisz.O(f)
Ale dobrym pomysłem jest zignorowanie tych pedantów i założenie, że oznacza jakiegoś członka zestawu. Kiedy więc mówimy f ( n ) = g ( n ) + O ( n ) , co tak naprawdę mamy na myśli, jeśli to f ( n ) - g ( n ) ∈ O ( n )O(f)f(n)=g(n)+O(n)f(n)−g(n)∈O(n) . (Uwaga: niektórzy pedantycy również mogą drżeć z powodu tego stwierdzenia, twierdząc, że jest liczbą iff(n)f jest funkcją!)
To sprawia, że bardzo wygodne jest pisanie takich wyrażeń jak
n≤∑k=1nk1/k≤n+O(n1/3)
Oznacza to, że istnieje pewna w taki sposób,f∈O(n1/3)
n≤∑k=1nk1/k≤n+f(n)
W twoim przypadku
∑k=1n1k=∑k=1nO(1)=O(n)
nadużywasz go jeszcze bardziej i musisz być ostrożny.
Istnieją dwie możliwe interpretacje: Czy odnosi się do funkcji n , czy funkcji k ?O(1)nk
Uważam, że właściwą interpretacją jest interpretacja jej jako funkcji .k
Jeśli spróbujesz myśleć o tym jako o funkcji , uważanej za niepoprawną, może to prowadzić do potencjalnych błędów, takich jak myślenie, że k to O ( 1 ) i próba napisania ∑ n k = 1 k = ∑ n k = 1 O ( 1 )nkO(1)∑nk=1k=∑nk=1O(1)
Jeśli spróbujesz myśleć o tym jako o funkcji , to prawdą jest, że jeśli f = O ( g ) (ponieważ argument przechodzi do ∞ ) ig nigdy nie wynosi 0 , tokf=O(g)∞g0
S(n)=∑k=1nf(k)=∑k=1nO(g(k))=O(∑k=1n|g(k)|)
Zauważ, że w środku zastosowaliśmy wygodne nadużycie notacji co oznacza, że dla niektórych funkcji h ∈ O ( g ) suma wynosi ∑ n k = 1 h ( k ) . Zauważ, że końcowa funkcja wewnątrz O odnosi się do funkcji nO(g(k))h∈O(g)∑nk=1h(k)On . Dowód nie jest taki trudny, ale musisz się zadowolić faktem, że masz do czynienia z asymptotyczną górną granicą (tj. Dla wystarczająco dużych argumentów), ale suma zaczyna się od .1
Jeśli spróbujesz myśleć o tym jako o funkcji , to jest również prawdą, że jeśli f = O ( g ) (jak argument przechodzi donf=O(g) ), to∞
S(n)=∑k=1nf(k)=∑k=1nO(g(n))=O(ng(n))
Zatem twój dowód jest zasadniczo poprawny, w obu interpretacjach.