Algorytm jest sekwencją dobrze zdefiniowanych kroków, które definiują abstrakcyjne rozwiązanie problemu. Użyj tego tagu, gdy Twój problem dotyczy projektowania i analizy algorytmów.
Na nieważonym wykresie bezkierunkowym z wierzchołkami i krawędziami E, takimi jak 2 V > E , jaki jest najszybszy sposób znalezienia wszystkich najkrótszych ścieżek na wykresie? Czy można to zrobić szybciej niż Floyd-Warshall, który jest O ( V 3 ), ale bardzo szybki na iterację?V.VVmiEE2 V.> E2V>E2V \gt EO ( …
Obecnie czytam i obserwuję algorytm genetyczny i uważam go za bardzo interesujący (nie miałem okazji go studiować, gdy byłem na uniwersytecie). Rozumiem, że mutacje oparte są na prawdopodobieństwie (losowość jest źródłem ewolucji), ale nie rozumiem, dlaczego przetrwanie. Z tego, co rozumiem, osoba która ma sprawność fizyczną tak jak dla innej …
Obecnie badam najkrótsze ścieżki na ukierunkowanych wykresach. Istnieje wiele wydajnych algorytmów do znajdowania najkrótszej ścieżki w sieci, takich jak dijkstra lub bellman-ford. Ale co, jeśli wykres jest dynamiczny? Mówiąc dynamiczny, mam na myśli to, że możemy wstawiać lub usuwać wierzchołki podczas wykonywania programu. Próbuję znaleźć skuteczny algorytm do aktualizowania najkrótszych …
Biorąc pod uwagę zbiór wielu liczb naturalnych X, rozważ zestaw wszystkich możliwych sum: sums(X)={∑i∈Ai|A⊆X}sums(X)={∑i∈Ai|A⊆X}\textrm{sums}(X)= \left\{ \sum_{i \in A} i \,|\, A \subseteq X \right\} Na przykład podczas gdy .sumy ( { 1 , 1 } ) = { 0 , 1 , 2 }sums({1,5})={0,1,5,6}sums({1,5})={0,1,5,6}\textrm{sums}(\left\{1,5\right\}) = \left\{0, 1, 5, 6\right\}sums({1,1})={0,1,2}sums({1,1})={0,1,2}\textrm{sums}(\left\{1,1\right\}) = …
Zaskakująca liczba problemów ma dość naturalne ograniczenia w programowaniu liniowym (LP). Przykłady, takie jak przepływy sieciowe, dopasowanie dwustronne, gry o sumie zerowej, najkrótsze ścieżki, forma regresji liniowej, a nawet ocena obwodu, patrz rozdział 7 w [1]! Ponieważ ocena obwodu ogranicza się do programowania liniowego, każdy problem w musi mieć sformułowanie …
Biorąc pod uwagę zestaw monet o różnych nominałach i wartości v, chcesz znaleźć najmniejszą liczbę monet potrzebną do przedstawienia wartości v.c1,...,cnc1,...,cnc1, ... , cn Np. Dla zestawu monet 1,5,10,20 daje to 2 monety dla sumy 6 i 6 monet dla sumy 19. Moje główne pytanie brzmi: kiedy można zastosować chciwą …
Mam dwa sposoby tworzenia listy przedmiotów w losowej kolejności i chciałbym ustalić, czy są one równie uczciwe (obiektywne). Pierwszą metodą, której używam, jest skonstruowanie całej listy elementów, a następnie wykonanie losowania (powiedzmy losowanie Fisher-Yates). Druga metoda jest raczej metodą iteracyjną, która utrzymuje losowość listy przy każdym wstawieniu. W pseudokodzie funkcja …
Próbuję dowiedzieć się, jak należy interpretować test pierwotności AKS, gdy się o nim dowiem, np. Następstwo dla udowodnienia, że PRIMES ⊆ P, lub faktycznie praktyczny algorytm do testowania pierwotności na komputerach. Test ma wielomianowy czas działania, ale z wysokim stopniem i możliwymi wysokimi stałymi. A więc w praktyce, w którym …
Te terminologie mylą mnie. Jak rozumiem Solver SAT: decyduje o spełnianiu logiki zdań (za pomocą DPLL lub wyszukiwania lokalnego). Procedura decyzyjna to procedura decydująca o spełnieniu pewnej rozstrzygalnej teorii pierwszego rzędu. Solver SMT to solver SAT + procedura decyzyjna. Przysłowie twierdzące wskazuje na coś takiego jak logika dynamiczna, np. Narzędzie …
Czy wygładzona analiza znalazła zastosowanie w analizie głównego strumienia algorytmów? Czy projektanci algorytmów często stosują wygładzoną analizę do swoich algorytmów?
Powiedzmy, że istnieje program taki, że jeśli podasz częściowo wypełnione Sudoku o dowolnym rozmiarze, otrzymasz odpowiednie wypełnione Sudoku. Czy możesz potraktować ten program jako czarną skrzynkę i użyć go do rozwiązania TSP? Mam na myśli, czy istnieje sposób na przedstawienie problemu TSP jako częściowo wypełnionego Sudoku, więc jeśli dam ci …
To wydaje się pytaniem, które powinno mieć łatwą odpowiedź, ale nie mam ostatecznego: nnna,pa,pa, pamodpamodpa\bmod p Jedynie podzielenie przez będzie wymagać czasu , gdzie jest złożoność mnożenia. Ale czy można wykonać nieco szybciej?aaappp O(M(n))O(M(n))O(M(n))M(n)M(n)M(n)modmod\bmod
To pytanie zostało przeniesione z Software Stack Stack Exchange, ponieważ można na nie odpowiedzieć na Computer Science Stack Exchange. Migrował 7 lat temu . Próbuję wdrożyć tabelę rozproszonego mieszania ciasta, ale niektóre rzeczy wymykają mi się z zrozumienia. Miałem nadzieję, że ktoś to wyjaśni. Oświadczenie : Nie jestem studentem informatyki. …
Uczę się C ++ i zauważyłem, że czas działania funkcji push_back dla wektorów jest stały „amortyzowany”. Dokumentacja zauważa ponadto, że „Jeśli nastąpi realokacja, sama realokacja jest liniowa w całym rozmiarze”. Czy nie powinno to oznaczać, że funkcją push_back jest , gdzie jest długością wektora? W końcu interesuje nas analiza najgorszego …
Przy stole jest nnn ludzi. iii th osoba musi zapłacić pipip_i dolarów. Niektórzy ludzie nie mają odpowiednich rachunków, aby zapłacić dokładnie , dlatego opracowali następujący algorytm.pipip_i Po pierwsze, wszyscy kładą na stole część swoich pieniędzy. Następnie każda osoba odbiera nadpłacone pieniądze. Rachunki mają ustalony zestaw nominałów (nie stanowi części danych …
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.