Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Książka do Algorytmiki
sztosz
post
Post #1





Grupa: Zarejestrowani
Postów: 866
Pomógł: 32
Dołączył: 2.06.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Kuleje jeśli chodzi o kwestie wynajdywania odpowiednich algorytmów żeby rozwiązać dany problem, czasem czytam o jakimś algorytm w necie i nie mam pojęcia jak go ugryźć.

Stąd moje pytanie: Czy jest jakaś książka z której dowiem się sprawnie tworzyć algorytmy, na czym to dokładnie polega? Ale tak od podstaw? W ogóle nie wiem czy w dobrym kierunku szukam, ale trochę błądzę po omacku. Nigdy nie kończyłem studiów informatycznych, ani matematycznych, więc mam w głowie tylko strzępki informacji na ten temat z liceum (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Jeszcze mała uwaga Loud (IMG:style_emoticons/default/smile.gif) Ale tym razem słuszna (IMG:style_emoticons/default/tongue.gif)
  1. $sqrt=sqrt($max);
  2. for ( $actualPos=2; $actualPos <= $sqrt; $actualPos++)


Strasznie zagmatwałem swój algorytm (tudzież kompletnie źle zaimplementowałem algorytm), właśnie przez "brute force". Zamiast skreślać z góry określone prawidłowe liczby to bawiłem się na około. Chyba mój algorytm sprawdził by się tylko w wyszukiwaniu liczb pierwszych w ciągach nieuporządkowanych, dodatkowo z lukami.

Co się dzieje...
1) Wybieram pierwszą liczbę z tablica ($actualPos wskazuje na klucz tablicy, który będzie naszym dzielnikiem)
2) Lecę od następnego elementu do końca tablicy i sprawdzam, która liczba jest podzielna przez dzielnik (pętla którą zacytowałeś)
3) jeżeli jest podzielna to usuwam ją.
4) resetuje klucze tablicy tak aby pętla for miała mniej iteracji, oraz żeby łatwo wybrać następny dzielnik poprzez iterację $actualPos

Ten post edytował wookieb 29.08.2009, 23:12:17
Go to the top of the page
+Quote Post

Posty w temacie
- sztosz   Książka do Algorytmiki   29.08.2009, 09:33:15
- - wookieb   Zależy jakich algorytmów poszukujesz. W phpie nie ...   29.08.2009, 09:37:21
- - blooregard   @sztosz - jeśli byłbyś zainteresowany zakupem ksią...   29.08.2009, 09:43:04
- - sztosz   Od razu mówię że PHP to mnie akurat mało interesuj...   29.08.2009, 09:56:56
- - wookieb   Niestety ta książka akurat sit nie omawia. Na stro...   29.08.2009, 10:13:04
- - thek   Tak naprawdę to nie ma dobrej książki do algorytmi...   29.08.2009, 19:39:46
- - Shadowsword   Kup "Wprowadzenie do algorytmów" Wydawni...   29.08.2009, 20:04:07
- - sztosz   No ładnie książka wszędzie kosztuje około 140 zł, ...   29.08.2009, 21:00:28
- - Shadowsword   Naprawdę warto. Jest gruba, dokładnie opisuje napr...   29.08.2009, 21:26:38
- - l0ud   CytatPoza tym nie można temu algorytmowi nic zarzu...   29.08.2009, 22:17:06
- - wookieb   Cytat(l0ud @ 29.08.2009, 23:17:06 ) O...   29.08.2009, 22:34:16
- - sztosz   @Shadowsword: ściągnąłem kilka rozdziałów, przeczy...   29.08.2009, 22:37:05
- - wookieb   CytatUPDATE Wynik mi wyszedł taki: 11.087609052658...   29.08.2009, 22:44:01
- - sztosz   CytatU mnie dzieje się to tutaj [PHP] pobierz, pla...   29.08.2009, 22:55:38
- - wookieb   Jeszcze mała uwaga Loud Ale tym razem słuszna [P...   29.08.2009, 23:04:52
- - thek   Kod l0ud'a jest szybszy tylko z jednego powodu...   30.08.2009, 00:33:43
- - sztosz   Ale cała szybkość nie polega na tym że do danego i...   30.08.2009, 01:52:38
- - thek   A popatrz sobie na wyjaśnienie moje oraz chłopaków...   30.08.2009, 02:41:38
- - sztosz   OK, może ten algorytm jest lepszy przy "zrów...   30.08.2009, 10:30:38
- - rzymek01   również polecam "Wprowadzenie do algorytmów...   30.08.2009, 13:34:12
- - thek   Zrównolegnianie to proces przekształcania kodu z s...   30.08.2009, 14:43:15
- - sztosz   Parallel computing (Obliczenia równoległe), tak si...   30.08.2009, 20:08:16
- - l0ud   CytatAlgorytm pierwszy jest bardziej optymalny i l...   30.08.2009, 22:12:53
- - thek   Wczoraj źle zrozumiałem algorytm Patrzyłem na nie...   31.08.2009, 00:04:23
- - rzymek01   [PHP] pobierz, plaintext <?php /* wykorzys...   31.08.2009, 09:16:03
- - sztosz   W Pythonie [PYTHON] pobierz, plaintext from time ...   31.08.2009, 15:33:05
- - l0ud   Cytatadded: ktoś wie dlaczego tablica bool [400 00...   31.08.2009, 16:32:05
- - thek   Zabrzmiało to jakby C++ sam nie był językiem wysok...   31.08.2009, 16:52:35
- - sztosz   Nadal jest błąd: [32680]=> int(385001) to jest...   31.08.2009, 16:56:55
- - l0ud   CytatZabrzmiało to jakby C++ sam nie był językiem ...   31.08.2009, 17:13:12
- - sztosz   A przede mną naprawdę dużo nauki, prosta rekurencj...   31.08.2009, 17:22:30
- - rzymek01   @sztosz, wiadomo, że rekurencja jest wolniejsza i ...   31.08.2009, 19:18:07
- - thek   OK... czas na mnie Kod#include <cstdlib> ...   1.09.2009, 01:50:22
- - rzymek01   no tak, memset jest znacznie szybszy jak ci się ...   1.09.2009, 13:53:48
- - thek   Można robić przez new... Tylko że przy wywoływaniu...   1.09.2009, 20:07:24
- - l0ud   Cytatale gdybym miał zwrócić wynik to byłaby kapli...   1.09.2009, 20:39:12
- - rzymek01   1. program po zakończeniu swojej pracy zwalnia prz...   1.09.2009, 21:19:48
- - l0ud   rzymek01, jak już to delete[] wyniki; A to, że sy...   1.09.2009, 21:34:17
|- - rzymek01   Cytat(l0ud @ 1.09.2009, 22:34:17 ) rz...   2.09.2009, 14:55:32
- - thek   @loud: gdyby rezerwacja i kasowanie pamięci były w...   1.09.2009, 22:17:54
- - Jabol   Co do tematu to niestety masz ten problem, że więk...   4.09.2009, 10:43:47


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 22:05