-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed2
.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: bartekltg <b...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: odchylenie standardowe online
Date: Mon, 30 Jan 2012 03:35:00 +0100
Organization: ATMAN - ATM S.A.
Lines: 60
Message-ID: <jg4vkl$vii$1@node2.news.atman.pl>
References: <jg4sr8$lv$1@inews.gazeta.pl>
NNTP-Posting-Host: 144-mi3-6.acn.waw.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1327890901 32338 85.222.69.144 (30 Jan 2012 02:35:01
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 30 Jan 2012 02:35:01 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0) Gecko/20111222
Thunderbird/9.0.1
In-Reply-To: <jg4sr8$lv$1@inews.gazeta.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:194920
[ ukryj nagłówki ]W dniu 2012-01-30 02:47, M.M. pisze:
> Czesc
>
> Jest liniowa tablica malych liczb staloprzecinkowych
> int tablica[1..N];
> N jest dosc duze, rzedu 100tys do 10mln.
>
> Jest tablica indeksow
> int index[1..M]
>
> Kazdy index[i] dzieli tablice na pare tablic:
> tablica_a[1..index[i]]
> tablice_b[index[i]+1..N]
>
> Czyli tablica_a ma index[i] pierwszych elementow z tablicy
> a tablica_b ma elementy pozostale.
>
> Zadanie jest takie, aby szybko oszacowac odchylenie standardowe dla kazdej
> pary tablic ( dla kazdej tablicy w kazdej parze, razem 2*M odchylen ).
> M niestety moze przyjmowac duze wartosci, a wiec par moze byc duzo,
> np. M ~= N / log(N).
>
> Mozna to policzyc jakims algorytmem online, albo np. algorytmem ktory
> przebiega cala tablice nie wiecej niz 10 razy?
http://www.youtube.com/watch?v=gENVB6tjq_M
Odchylenie standardowe to pierwiastek wariancji.
Var(X) = E[ (X-E(X))^2 ] =...= E(X^2) - E(X)^2
Korzystamy z drugiej wersji.
Pisząc po ludzku sum_{i=1}^k (x_i^2/k)/k - ( sum_{i=1}^k x_i )^2/k
Ponieważ masz inty, nie musisz sie przejmować stratą dokładności
(np licząc odchylenie z dużęj próbki X ~ N(1,10^-12) lepiej użyć
pierwszego wzoru;) uważaj jedynie na zakres, bo prawie na pewno
przekroczysz int32, a dla odpowiednich danych i int64)
Liczysz więc na bieżąco sumę i sumę kwadratów, zapisujesz
je dla każdego k z tablicy index.
Potem za ich pomocą (oraz sumy i sumy kwadratów wszystkich)
obliczasz odchylenie w odpowiednich podtablicach.
Podsumowując masz jeden przejazd po 'tablica' z zapisywaniem
do tablic długości M (suma i suma kwadratów) a następnie
przelecenie tych tablic i wpisanie wyników (uważaj na związek
indeksu i długości przedziału==liczności próbki i pamiętaj
o pierwiastku:) IMHO najpierw odejmowanie, potem zrzut
na double i dzielenie.
pzdr
bartekltg
Następne wpisy z tego wątku
- 30.01.12 02:30 Jordan Szubert
- 30.01.12 04:27 M.M.
- 30.01.12 04:42 M.M.
- 30.01.12 04:53 bartekltg
- 30.01.12 05:25 M.M.
- 01.02.12 16:49 slawek
- 01.02.12 20:50 jolz
- 01.02.12 22:02 M.M.
- 01.02.12 23:54 bartekltg
- 02.02.12 18:17 slawek
- 02.02.12 18:23 slawek
- 02.02.12 22:00 M.M.
- 03.02.12 09:43 bartekltg
- 03.02.12 09:54 M.M.
- 03.02.12 10:19 bartekltg
Najnowsze wątki z tej grupy
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Ceny mieszkań stabilne a zdolność kredytowa rośnie. O ile nie masz dzieci