W pracy miałem za zadanie wnioskować o pewnych typach informacji o dynamicznym języku. Przepisuję sekwencje instrukcji na letwyrażenia zagnieżdżone , tak jak poniżej: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if …
Walczę z haszowaniem i materiałem do wyszukiwania binarnego. Przeczytałem, że zamiast używać list do przechowywania wpisów z tymi samymi wartościami skrótu, możliwe jest również użycie drzew wyszukiwania binarnego. I staram się zrozumieć, jaki jest najgorszy i średni przypadek wykonania operacji insert, find i delete jest wart. średni przypadek. Czy poprawiają …
Fibonnaci Heap obsługuje następujące operacje: insert(key, data) : dodaje nowy element do struktury danych find-min() : zwraca wskaźnik do elementu z minimalnym kluczem delete-min() : usuwa element z minimalnym kluczem delete(node) : usuwa element wskazany przez node decrease-key(node) : zmniejsza klucz wskazanego elementu node Wszystkie operacje niezwiązane z usuwaniem mają …
Istnieją wydajne struktury danych do reprezentowania ustawionych partycji. Te struktury danych charakteryzują się dużą złożonością czasową dla operacji takich jak Union i Find, ale nie są szczególnie efektywne pod względem przestrzeni. Jaki jest oszczędny przestrzennie sposób reprezentowania partycji zestawu? Oto jeden z możliwych punktów wyjścia: Wiem, że liczba partycji zestawu …
Termin ten spotkałem wiele razy w różnych materiałach edukacyjnych CS: L2 CS162 (UC Berkeley): We / wy mapowane na pamięć L4 CS162 (UC Berkeley): Pliki mapowane w pamięci L24 CS61 (UC Berkeley): „We / wy mapowane na pamięć”: Rejestry sterowania / danych mapowane na przestrzeń adresową procesora Nawet po „mapowaniu” …
Muszę przechowywać kolekcję liczb całkowitych z zakresu od 0 do 65535, aby móc szybko wykonać następujące czynności: Wstaw nową liczbę całkowitą Wstaw zakres ciągłych liczb całkowitych Usuń liczbę całkowitą Usuń wszystkie liczby całkowite poniżej liczby całkowitej Sprawdź, czy występuje liczba całkowita Moje dane mają tę właściwość, że często zawierają ciągi …
Potrzebuję pomocy w określeniu funkcji potencjalnej dla stosu maksymalnego, aby wyciąg maksymalny został zakończony w czasie zamortyzowanym . Powinienem dodać, że nie rozumiem potencjalnie tej metody.O ( 1 )O(1)O(1) Wiem, że funkcja wstawiania powinna „płacić” więcej, aby zmniejszyć koszt wydobycia, i musi to dotyczyć wysokości stosu (jeśli podaje wysokość stosu, …
Załóżmy, że mam ukierunkowany wykres z wagami krawędzi narysowanymi z zakresu [1,…,K][1,…,K][1,\dots, K] gdzie KKK jest stałe. Jeśli próbuję znaleźć najkrótszą ścieżkę za pomocą algorytmu Dijkstry , jak mogę zmodyfikować strukturę algorytmu / danych i poprawić złożoność czasu do O(|V|+|E|)O(|V|+|E|)O(|V|+|E|) ?
Byłem zdezorientowany podczas rozwiązywania następującego problemu (pytania 1–3). Pytanie D -ary sterty jest jak stos binarny, lecz (z wyjątkiem jednej z możliwych) węzły nie liść ma d dzieci zamiast 2 dzieci. Jak byś stanowią d -ary sterty w tablicy? Jaka jest wysokość d -ary sterty n elementów pod względem n …
Jak udowodnić, że oczekiwana wysokość losowo zbudowanego drzewa wyszukiwania binarnego z węzłami wynosi ? Istnieje dowód we CLRS Wstęp do algorytmów (rozdział 12.4), ale ja go nie rozumiem.nnnO(logn)O(logn)O(\log n)
Rozumiem, że drzewa segmentów można wykorzystać do znalezienia sumy podgrupy ZAAA. I to można zrobić wO (logn )O(logn)\mathcal{O}(\log n)czas zgodnie z tutorialem tutaj . Jednak nie jestem w stanie udowodnić, że czas na zapytanie jest rzeczywiście O (logn )O(logn)\mathcal{O}(\log n). Ten link (i wiele innych) mówi, że możemy udowodnić, że …
Próbuję zrozumieć, w jaki sposób drzewa indeksowane binarnie (drzewa fenwick) można modyfikować w celu obsługi zapytań o zakres i aktualizacji zakresu. Znalazłem następujące źródła: http://kartikkukreja.wordpress.com/2013/12/02/range-updates-with-bit-fenwick-tree/ http://programmingcontests.quora.com/Tutorial-Range-Updates-in-Fenwick-Tree http : //apps.topcoder.com/forums/? module = Thread & ThreadID = 756271 & start = 0 & mc = 4 # 1579597 Ale nawet po przeczytaniu …
W mojej klasie Java uczymy się o złożoności różnych typów kolekcji. Wkrótce będziemy rozmawiać o drzewach binarnych, o których czytałem. Książka stwierdza, że minimalna wysokość drzewa binarnego wynosi , ale nie oferuje dalszych wyjaśnień.log2( n + 1 ) - 1log2)(n+1)-1\log_2(n+1) - 1 Czy ktoś może wyjaśnić, dlaczego?
Dla danego płaskiego wykresu osadzonego w płaszczyźnie, zdefiniowanego przez zestaw segmentów liniowych , każdy segment jest reprezentowany przez punkty końcowe . Skonstruuj strukturę danych DCEL dla podziału planarnego, opisz algorytm, udowodnij jego poprawność i pokaż złożoność.G(V,E)G(V,E)G(V,E)E={e1,...,em}E={e1,...,em}E= \left \{ e_1,...,e_m \right \} eieie_i{Li,Ri}{Li,Ri}\left \{ L_i,R_i \right \} Zgodnie z tym opisem …
Patrzę na techniki implementacji języków programowania, a ostatnio natknąłem się na stosy spaghetti, które podobno dobrze pasują do modelu stylu kontynuacji przechodzenia (biorąc pod uwagę ich zastosowanie np. W Scheme i SML / NJ ). Dla uproszczenia rozważmy tylko jedno-wątkowe procesy dla tego pytania. Jestem jednak nieco zdezorientowany schematem na …
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.