Notacja Big-O jest używana do reprezentowania asymptotycznych górnych granic. Opisuje istotną złożoność czasową lub przestrzenną algorytmów. Analiza Big-O zapewnia zgrubne i uproszczone oszacowanie trudności problemu.
Zadaję to pytanie, ponieważ nie jestem pewien jednego aspektu dotyczącego dużej notacji O. Korzystam z książki Franka Carrano , Struktury danych i abstrakcje z Javą . W rozdziale „Efektywność algorytmów” pokazuje następujący algorytm: int sum = 0, i = 1, j = 1 for (i = 1 to n) { …
Biorąc pod uwagę dowolną funkcję podwójnie rekurencyjną, jak obliczyć jej czas działania? Na przykład (w pseudokodzie): int a(int x){ if (x < = 0) return 1010; else return b(x-1) + a(x-1); } int b(int y){ if (y <= -5) return -2; else return b(a(y-1)); } Lub coś podobnego. Jakich metod …
Jestem programistą i właśnie zacząłem czytać Algorytmy. Nie jestem do końca przekonany zapisami, a mianowicie Bog Oh, Big Omega i Big Theta. Powodem jest z definicji Big Oh, stwierdza ona, że powinna istnieć funkcja g (x) taka, aby zawsze była większa lub równa f (x). Lub f (x) <= cn …
Powiedzmy, że mam funkcję liniową. f(n)= an+bJaki jest najlepszy sposób na udowodnienie, że ta funkcja należy do O (n 2 ) i Θ(n)? Nie potrzebuję tutaj matematycznego rygoru. Potrzebuję odpowiedzi od programistów. Jakiś logiczny sposób wyjaśnienia. Właśnie dlatego nie opublikowałem pytania w pytaniach matematycznych, a zamiast tego w pytaniach programistów.
Rozwiązuję pytanie dotyczące algorytmu i moja analiza polega na tym, że będzie on działał na O (2 ^ sqrt (n)). Jak duże to jest? Czy to odpowiada O (2 ^ n)? Czy nadal jest to czas niepomiarowy?
Jestem przyzwyczajony do ręcznego wyszukiwania notacji Landau (Big O, Theta ...) moich algorytmów, aby upewnić się, że są one tak zoptymalizowane, jak to tylko możliwe, ale kiedy funkcje stają się naprawdę duże i złożone, zaczyna to robić zbyt dużo czasu, aby zrobić to ręcznie. jest również podatny na błędy ludzkie. …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.