Mam listę 500000 losowo wygenerowanych Tuple<long,long,string>obiektów, na których wykonuję proste wyszukiwanie „pomiędzy”: var data = new List<Tuple<long,long,string>>(500000); ... var cnt = data.Count(t => t.Item1 <= x && t.Item2 >= x); Gdy generuję losową tablicę i uruchamiam wyszukiwanie 100 losowo wygenerowanych wartości x, wyszukiwanie kończy się w ciągu około czterech sekund. …
Wcześniej zadałem pytanie, dlaczego widzę tak wiele przykładów używających varsłowa kluczowego i uzyskałem odpowiedź, że chociaż jest to konieczne tylko w przypadku typów anonimowych, to jednak jest ono używane, aby pisanie kodu było „szybsze” / łatwiejsze i „tylko dlatego”. Podążając za tym linkiem („C # 3.0 - Var Is Not …
Rozumiem, dlaczego autotyp w C ++ 11 poprawia poprawność i łatwość konserwacji. Czytałem, że może to również poprawić wydajność ( Prawie zawsze auto autorstwa Herb Sutter), ale brakuje mi dobrego wyjaśnienia. Jak autopoprawić wydajność? Czy ktoś może podać przykład?
Podczas uruchamiania pętli sumy nad tablicą w Rust zauważyłem ogromny spadek wydajności, gdy CAPACITY> = 240. CAPACITY= 239 jest około 80 razy szybszy. Czy istnieje specjalna optymalizacja kompilacji, którą Rust robi dla „krótkich” tablic? Kompilowany z rustc -C opt-level=3. use std::time::Instant; const CAPACITY: usize = 240; const IN_LOOPS: usize = …
Czy jest jakiś spadek wydajności, jeśli użyjemy pętli zamiast rekurencji lub odwrotnie w algorytmach, w których oba mogą służyć temu samemu celowi? Np .: Sprawdź, czy podany ciąg jest palindromem. Widziałem wielu programistów wykorzystujących rekurencję jako sposób na popisanie się, kiedy prosty algorytm iteracji może zmieścić się w rachunku. Czy …
Tło: Podczas optymalizacji kodu Pascal za pomocą wbudowanego języka asemblera zauważyłem niepotrzebną MOVinstrukcję i usunąłem ją. Ku mojemu zaskoczeniu usunięcie niepotrzebnych instrukcji spowodowało spowolnienie programu . Przekonałem się, że dodanie arbitralnych, bezużytecznych MOVinstrukcji jeszcze bardziej zwiększyło wydajność . Efekt jest zmienny, a zmiany oparte na kolejności wykonywania: te same niepotrzebne …
Uważam, że istnieje sposób na znalezienie k-tego największego elementu w nieposortowanej tablicy o długości n w O (n). A może to „oczekiwane” O (n) lub coś takiego. Jak możemy to zrobić?
Po przeprowadzeniu niektórych eksperymentów na matrycach kwadratowych o różnych rozmiarach pojawił się wzór. Niezmiennie transpozycja macierzy rozmiaru 2^njest wolniejsza niż transpozycja macierzy rozmiaru2^n+1 . W przypadku małych wartości nróżnica nie jest duża. Duże różnice występują jednak w przypadku wartości 512. (przynajmniej dla mnie) Oświadczenie: Wiem, że funkcja nie transponuje macierzy …
Przejrzałem Google i przeszukałem witrynę Go, ale nie mogę znaleźć wytłumaczenia dla niezwykłych czasów kompilacji Go. Czy są to produkty funkcji językowych (lub ich brak), wysoce zoptymalizowany kompilator, czy coś innego? Nie próbuję promować Go; Jestem po prostu ciekawy.
Rozumiem różnicę między Stringi StringBuilder(StringBuilder jest zmienny), ale czy istnieje duża różnica w wydajności między nimi? Program, nad którym pracuję, ma wiele dołączonych ciągów znaków (ponad 500). Czy korzystasz StringBuilderz lepszego wyboru?
Musimy cały czas budować ciągi dla danych wyjściowych dziennika i tak dalej. W wersjach JDK nauczyliśmy się, kiedy używać StringBuffer(wiele dodatków, bezpieczny wątek) i StringBuilder(wiele dodatków, nie bezpieczny wątek). Jaka jest rada na temat korzystania String.format()? Czy jest wydajny, czy też jesteśmy zmuszeni trzymać się konkatenacji dla jedno-liniowych, w których …
Uważam, że w AS3 należy zainicjować wszystkie zmienne poza pętlami w celu zwiększenia wydajności. Czy tak jest również w przypadku JavaScript? Który jest lepszy / szybszy / najlepsza praktyka? var value = 0; for (var i = 0; i < 100; i++) { value = somearray[i]; } lub for (var …
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.