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.
W każdym wywiadzie, w którym uczestniczyłem, byłem pytany o matematyczną analizę złożoności, w tym notację big-O. Jak istotna jest analiza Big-O dla rozwoju przemysłu? Jak często tak naprawdę go używasz i jak konieczne jest wyostrzone podejście do problemu?
Jedno z moich znajomych zostało zadane w tym wywiadzie - „Ciągły napływ liczb przychodzi z nieskończonej listy liczb, z których trzeba utrzymywać strukturę danych, aby zwracać 100 najwyższych liczb w danym momencie. Załóżmy, że wszystkie liczby są tylko liczbami całkowitymi”. Jest to proste, musisz utrzymywać posortowaną listę w kolejności malejącej …
Próbuję nauczyć się, jak obliczyć notację BigO dla dowolnej funkcji. Znalazłem tę funkcję w podręczniku. Książka potwierdza, że funkcją jest O (n 2 ). To wyjaśnia, dlaczego tak jest, ale staram się podążać. Zastanawiam się, czy ktoś mógłby mi pokazać matematykę, dlaczego tak jest. Zasadniczo rozumiem, że jest to coś …
Ostatniej nocy dyskutowałem z innym programistą, że nawet jeśli coś może być O (1), operacja, która jest O (n), może przewyższyć to, jeśli w algorytmie O (1) jest duża stała. Nie zgodził się, więc przyniosłem to tutaj. Czy istnieją przykłady algorytmów, które znacznie przewyższają algorytmy w klasie poniżej? Na przykład …
Staram się zrozumieć te klasyfikacje i dlaczego one istnieją. Czy moje rozumowanie jest prawidłowe? Jeśli nie to co? P jest złożonością wielomianową lub dla pewnej nieujemnej liczby rzeczywistej , takiej jak itp. Jeśli problem należy do P, istnieje co najmniej jeden algorytm, który może rozwiązać go od zera w czasie …
Wsparcie! Mam pytanie, w którym muszę przeanalizować Big-O algorytmu lub jakiegoś kodu. Nie jestem pewien, czym dokładnie jest Big-O ani jaki ma to związek z Big-Theta lub innymi metodami analizy złożoności algorytmu. Nie jestem pewien, czy Big-O odnosi się do czasu uruchomienia kodu, czy do ilości zajętej pamięci (kompromisy czas …
Dowiedziałem się więcej o notacji Big O i tym, jak ją obliczyć na podstawie sposobu pisania algorytmu. Natknąłem się na interesujący zestaw „reguł” do obliczania algorytmów Notacja Big O i chciałem sprawdzić, czy jestem na dobrej drodze, czy daleko. Duża notacja O: N function(n) { For(var a = 0; i …
Mergesort jest algorytmem dzielenia i zdobywania i ma wartość O (log n), ponieważ dane wejściowe są wielokrotnie zmniejszane o połowę. Ale czy nie powinno to być O (n), ponieważ mimo że dane wejściowe są zmniejszone o połowę w każdej pętli, każdy element wejściowy musi być iterowany, aby wykonać zamianę w …
Odświeżam moją teorię CS i chcę wiedzieć, jak rozpoznać złożoność algorytmu O (log n). W szczególności, czy istnieje łatwy sposób na identyfikację? Wiem, że z O (n) zwykle masz pojedynczą pętlę; O (n ^ 2) jest podwójną pętlą; O (n ^ 3) jest potrójną pętlą itp. Co powiesz na O …
Podano dwa posortowane tablice a , b typu T o rozmiarze n i m . Szukam algorytmu, który łączy dwie tablice w nową tablicę (o maksymalnym rozmiarze n + m). Jeśli masz tanią operację porównania, jest to dość proste. Wystarczy pobrać z tablicy z najniższym pierwszym elementem, aż jeden lub …
Co to jest Big and O w notacji Big O? Przeczytałem definicje i nie mówi, co oznacza O jako „och”. Na przykład - rozumiem, że O (n) jest złożonością algorytmu liniowego, gdzie n może być liczbą operacji. ale czym jest O ?
Jakiego terminu mogę użyć do opisania czegoś o złożoności O (N log N)? Na przykład: O (1): Stała O (log N): Logarytmiczny O (N): liniowy O (N log N): ?????? O (N 2 ): Kwadratowy O (N 3 ): Sześcienny
Mam następujący algorytm, który wyszukuje duplikaty i usuwa je: public static int numDuplicatesB(int[] arr) { Sort.mergesort(arr); int numDups = 0; for (int i = 1; i < arr.length; i++) { if (arr[i] == arr[i - 1]) { numDups++; } } return numDups; } Usiłuję znaleźć najgorszą złożoność tego przypadku. Wiem, …
Notacja Big O zapewnia górną granicę funkcji, podczas gdy Big Theta zapewnia ścisłą granicę. Uważam jednak, że notacja Big O jest zwykle (i nieformalnie) nauczana i stosowana, gdy naprawdę mają na myśli Big Theta. np. „Quicksort to O (N ^ 2)” może przekształcić się w znacznie silniejsze zdanie „Quicksort to …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte w zeszłym roku . Powiedzmy, że mam funkcję sortującą bazę danych w O(n^2)czasie. Chcę zająć się refaktoryzacją, …
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.