Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Rozmowy na temat prac konkursowych
rzymek01
post
Post #1





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


Wydzielone z: http://forum.php.pl/index.php?s=&showt...st&p=803748 - DeyV

------------------------



nie mam jak zainstalowac, na płycie mam live bez żadnego serwera nic, a jak chce cos instalowac typu serwer etc to chce już zainstalowanego systemu

PS. nie ma co juz kombinowac, pozostawię starą wersję co wysłałem juz jakis czas temu z tą moją funkcją, która w językach kompilowanych na pewno działałaby szybciej, ale php jest interpretowany i tutaj z tym jest różnie :/

Już jest północ to można pisać o zadaniach biggrin.gif

Ten post edytował DeyV 4.11.2010, 08:55:00


--------------------
:]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
flashdev
post
Post #2





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Cytat(phpion @ 6.11.2010, 14:52:50 ) *
No i jakaś iskierka nadziei pozostaje. Ja osobiście nie upieram się, że prace typu jak moja muszą (nawet złe słowo!) być wzięte pod uwagę, ale zdrowo rozsądkowe podejście byłoby oczywiście mile widziane. Cóż - pozostaje nam czekać.

Trzymam kciuki, żeby tak było.

Cytat(phpion @ 6.11.2010, 14:52:50 ) *
Jakby nie było to konkurs był super pomysłem i mnie osobiście nauczył bardzo wiele. Coprawda w pracy codziennej nadal będę używał strlen zamiast while winksmiley.jpg ale jednak sporo do głowy weszło.


Co do strlen, czytam to co piszesz i nie mogąc w to uwierzyć robie własne testy, których wyniki prezentuję poniżej.

Testowałem 8 skryptów, 6 z nich analogicznych do 2 poniższych:
  1. <?php
  2. $str = str_repeat('x', 1e4);
  3. while( $n-- ){
  4. $len = strlen($str);
  5. }

  1. <?php
  2. $str = str_repeat('x', 1e4);
  3. while( $n-- ){
  4. $len = 0;
  5. while(isset($str{++$len}));
  6. }


założenia:
$n = 1e6;
Każdy z kodów uruchomiony 10 razy. Wyniki to średnia i odchylenie.

wyniki pomiarów:
Kod
av:    0.423 [s]    sd:    0.012 [s]    _strlen 1e1.php
av:    0.426 [s]    sd:    0.027 [s]    _strlen 1e2.php
av:    0.425 [s]    sd:    0.014 [s]    _strlen 1e3.php
av:    0.433 [s]    sd:    0.019 [s]    _strlen 1e4.php

av:    1.208 [s]    sd:    0.010 [s]    _while strlen 1e1.php
av:    11.386 [s]    sd:    0.253 [s]    _while strlen 1e2.php
av:    113.773 [s]    sd:    1.262 [s]    _while strlen 1e3.php
av:    1178.517 [s]    sd:    26.398 [s]    _while strlen 1e4.php


Wniosków można było się spodziewać:
- strlen cechuje się praktycznie zerowym (pomijalnie małym do wykonania funkcji itd.) wpływem długości ciągu wejściowego na czas wykonywania,
- czas wykonania zliczania przy pomocy while jest liniowo zależny od długości ciągu,
- pętla while ma szanse wygrać z strlen przy ciągach o długości około 5 i mniejszych.

Przypominam jeszcze raz, że wyniki podawane tu na forum są tylko poglądowe a rzeczywiste wyniki mogą się sporo różnić, ponieważ nie znamy testów.

Ten post edytował flashdev 6.11.2010, 20:58:30


--------------------
Go to the top of the page
+Quote Post

Posty w temacie
- rzymek01   Rozmowy na temat prac konkursowych   3.11.2010, 23:49:13
- - flashdev   Cytat(rzymek01 @ 3.11.2010, 23:49:13 ...   3.11.2010, 23:59:42
- - rzymek01   no co ty, juz mam 2 po   4.11.2010, 00:00:45
- - Pawel_W   no to nie wiem, wklejamy?   4.11.2010, 00:10:00
- - rzymek01   co mogę napisać, patrząc z czysto algorytmicznego ...   4.11.2010, 00:14:32
- - flashdev   Cytat(Pawel_W @ 4.11.2010, 00:10:00 )...   4.11.2010, 00:14:47
- - Pawel_W   http://wklej.org/hash/d9a8df00ee8/ no to ja zasza...   4.11.2010, 00:15:46
|- - starach   Cytat(Pawel_W @ 4.11.2010, 00:15:46 )...   4.11.2010, 00:31:42
- - dr_bonzo   Pawel_W - wyprzedziles moj kod, ale chyba brakuje ...   4.11.2010, 00:32:16
- - flashdev   Cytat(Pawel_W @ 4.11.2010, 00:15:46 )...   4.11.2010, 00:35:48
- - dr_bonzo   Zrob dluzsze pomiary. Oficjalne testy sa po 1000 r...   4.11.2010, 00:39:15
- - flashdev   Cytat(dr_bonzo @ 4.11.2010, 00:39:15 ...   4.11.2010, 00:41:13
- - dr_bonzo   ah, niedoczytalem   4.11.2010, 00:42:50
- - flashdev   Cytat(Pawel_W @ 4.11.2010, 00:15:46 )...   4.11.2010, 00:44:28
- - dr_bonzo   @Pawel_W Kodpreg_match_all('#([KW...   4.11.2010, 00:50:47
- - 8rol   @Pawel_W, spróbuj uruchomić swój skrypt z parametr...   4.11.2010, 00:52:23
- - flashdev   Cytat(8rol @ 4.11.2010, 00:52:23 ) @P...   4.11.2010, 00:57:53
- - zegarek84   http://wklej.org/id/412327/   4.11.2010, 01:04:46
- - dr_bonzo   A to moj kod: http://paste-it.net/public/je4eef6/   4.11.2010, 01:12:05
- - 8rol   dr_bonzo, wydaje mi się, że masz pewien problem z ...   4.11.2010, 01:28:03
|- - dr_bonzo   Cytat(8rol @ 4.11.2010, 02:28:03 ) dr...   4.11.2010, 08:35:51
- - ayeo   No to i ja wkleję mojego zamulatora Ale mi nie wy...   4.11.2010, 02:12:54
- - my salsa   No więc poniżej i mój kod Trochę nawalone pętli, ...   4.11.2010, 07:58:30
- - askone   Gdy patrzę na Wasze kody to mam dziwne odczucie, ż...   4.11.2010, 08:12:06
- - rolka   Mój kod: http://snippie.net/snip/b349642b Tym test...   4.11.2010, 08:19:42
- - my salsa   Cytat(Pawel_W @ 4.11.2010, 00:15:46 )...   4.11.2010, 08:29:42
|- - rolka   Cytat(my salsa @ 4.11.2010, 08:29:42 ...   4.11.2010, 09:28:52
- - dr_bonzo   Wolne uwagi - NIEWAZNE: co jak wypełniaczami są p...   4.11.2010, 09:41:33
|- - phpion   Cytat(dr_bonzo @ 4.11.2010, 09:41:33 ...   4.11.2010, 09:46:54
- - ayeo   Coś z tymi testami jest nie tak jeśli mój kombajn ...   4.11.2010, 09:47:46
- - krowal   @phpion, też zrobiłem osobny sposób dla przypadku ...   4.11.2010, 09:48:45
|- - phpion   Cytat(krowal @ 4.11.2010, 09:48:45 ) ...   4.11.2010, 09:51:06
- - krowal   Sądząc po tym jak później tego używasz to nie powi...   4.11.2010, 09:54:37
- - phpion   Można też tak, jak najbardziej, ale while() jest s...   4.11.2010, 09:58:10
- - krowal   Ech teraz kolejne dwa tygodnie czekania   4.11.2010, 10:00:57
- - dr_bonzo   Jeszcze raz wklejam Krotszy kod: I3OHUI5Y0UXU7VQS...   4.11.2010, 10:04:11
- - krowal   @dr_bonzo, dzięki za rozwianie wątpliwości Pozos...   4.11.2010, 10:36:45
- - flashdev   Jednak czytanie ze zrozumieniem to przydatna umiej...   4.11.2010, 11:54:22
- - dr_bonzo   @flashdev - dodane (patrz na 2 gorne posty)   4.11.2010, 12:11:08
- - flashdev   Cytat(dr_bonzo @ 4.11.2010, 12:11:08 ...   4.11.2010, 12:14:36
- - ayeo   Ale strzeliłem babola! W najprostszym momencie...   4.11.2010, 12:41:01
- - l0ud   Moje "cudo" http://wklej.org/id/412490...   4.11.2010, 15:08:54
- - sever88   Mój kod: http://pastebin.com/AbQs4AjL Nie mam żad...   4.11.2010, 15:21:35
|- - kaliberx   Cytat(sever88 @ 4.11.2010, 15:21:35 )...   4.11.2010, 18:54:42
|- - qba10   Cytat(sever88 @ 4.11.2010, 15:21:35 )...   4.11.2010, 20:13:44
- - damc   Ktoś jest zainteresowany tym, jak zrobić pierwszy ...   4.11.2010, 15:49:27
- - rzymek01   Wiem, że teraz trochę naciągam, ale proszę o dołąc...   4.11.2010, 18:04:59
- - askone   Obiecany kod: http://wklej.org/id/412654/ Fajnie ...   4.11.2010, 18:19:53
- - Demio   http://wklej.org/id/412657/ Mój kod. Pozdrawiam.   4.11.2010, 18:21:47
- - Pawel_W   widzę, że dużo osób tu stosuje pętlę for, a to jes...   4.11.2010, 18:49:41
- - dr_bonzo   Jakis dowod?   4.11.2010, 18:53:36
|- - Pawel_W   Cytat(dr_bonzo @ 4.11.2010, 18:53:36 ...   4.11.2010, 19:36:28
- - dr_bonzo   IMO Dużo programów odpadnie na teście dokładności...   4.11.2010, 19:10:19
- - dr_bonzo   To czekam na kod. I wskazanie ile zyskam zamieniaj...   4.11.2010, 19:37:17
- - jasin   Wszyscy wrzucają to i ja Wiem, że nie jest to sup...   4.11.2010, 21:41:08
- - flashdev   Cytat(dr_bonzo @ 4.11.2010, 19:37:17 ...   4.11.2010, 21:59:40
|- - Pawel_W   Cytat(flashdev @ 4.11.2010, 21:59:40 ...   4.11.2010, 23:35:31
- - rzymek01   ciekawe skąd bierze się taka różnica... o ile pam...   4.11.2010, 23:46:43
|- - Pawel_W   Cytat(rzymek01 @ 4.11.2010, 23:46:43 ...   4.11.2010, 23:53:12
- - flashdev   Cytat(Pawel_W @ 4.11.2010, 23:53:12 )...   4.11.2010, 23:55:05
- - rzymek01   no własnie, pamietam, że jak sprawdzalem instrukcj...   5.11.2010, 00:42:40
- - ernie242   Jestem pod wrażeniem Panowie Niektóre kody są n...   5.11.2010, 11:00:03
- - phpion   No i zadek. Ja również odpadłem z rywalizacji. Po ...   5.11.2010, 13:01:33
- - dr_bonzo   @phpion: CytatW moich testach 1000 wywołań zajmow...   5.11.2010, 13:08:30
- - phpion   Testowałem to tak, że w kodzie na sztywno zapisałe...   5.11.2010, 13:16:57
- - ernie242   2 tygle. Wow, no to naprawdę szkoda :/   5.11.2010, 13:38:56
- - dr_bonzo   @phpion - roznice w czasach sa ciekawe. Moze to ...   5.11.2010, 13:46:36
- - phpion   Może, nie wiem. Ja opierałem się na tych wynikach ...   5.11.2010, 13:52:32
- - ernie242   Być może podarują Tobie ten jeden LF   5.11.2010, 14:11:13
|- - phpion   Cytat(ernie242 @ 5.11.2010, 14:11:13 ...   5.11.2010, 14:15:09
- - dr_bonzo   A mi smieci w kodzie i kiepski czas.   5.11.2010, 14:13:22
- - rzymek01   @phpion nie ma co się poddawać, nawet na olimpiadz...   5.11.2010, 16:10:05
- - flashdev   Cytat(rzymek01 @ 5.11.2010, 16:10:05 ...   5.11.2010, 16:21:15
- - dr_bonzo   No dobra, ale to byl chyba najjasniej i najprecyzy...   5.11.2010, 16:23:28
|- - phpion   Cytat(dr_bonzo @ 5.11.2010, 16:23:28 ...   6.11.2010, 13:40:51
|- - Pawel_W   Cytat(phpion @ 6.11.2010, 13:40:51 ) ...   6.11.2010, 13:48:32
- - Pawel_W   ja o tym dobrze wiedziałem i sam nie wiem, dlaczeg...   5.11.2010, 17:53:30
- - ADeM   Mój amatorski kod: http://pastebin.com/ETZPV0Ug   5.11.2010, 22:54:48
- - phpion   No to może porównanie średnio trafne. Na konkursac...   6.11.2010, 14:13:01
- - itsme   pamiętajcie że jezeli chodzi o pierwsza nagrode tu...   6.11.2010, 14:23:55
|- - phpion   Cytat(itsme @ 6.11.2010, 14:23:55 ) Z...   6.11.2010, 14:52:50
- - flashdev   Cytat(phpion @ 6.11.2010, 14:52:50 ) ...   6.11.2010, 17:05:17
|- - ernie242   Cóż, powili zaczynam żałować, że zupełnie nie miał...   6.11.2010, 23:25:18
- - phpion   Przyznam, że nie testowałem strlen vs while na dłu...   6.11.2010, 17:19:06
- - flashdev   Cytat(phpion @ 6.11.2010, 17:19:06 ) ...   6.11.2010, 17:29:16
|- - phpion   Cytat(flashdev @ 6.11.2010, 17:29:16 ...   6.11.2010, 19:38:57
- - l0ud   @phpion, mógłbyś spróbować przeprowadzić te testy ...   7.11.2010, 21:38:43
- - rzymek01   możesz zamieścic wyniki   8.11.2010, 00:16:37
- - chrix   Witam wszystkich!!!! Jestem tu no...   8.11.2010, 23:35:09
- - l0ud   Wyników nie dam, ale kod którym sprawdziłem 2 pier...   8.11.2010, 23:40:49
- - chrix   Wielkie dzięki!!! no to chyba nie naj...   9.11.2010, 00:46:26
- - kaliberx   Jak dla mnie sposób pomiaru zaproponowany w regula...   9.11.2010, 18:13:55
|- - ernie242   Cytat(kaliberx @ 9.11.2010, 18:13:55 ...   10.11.2010, 21:12:02
- - dr_bonzo   @kaliberx: całkowicie sie z toba zgadzam. W regula...   9.11.2010, 18:54:41
- - dr_bonzo   CytatMogą użyć skryptu w Bash. Make. Rakefile. Cok...   10.11.2010, 21:15:09
- - DeyV   Wyniki zostały ogłoszone. http://wortal.php.pl/Wor...   17.11.2010, 20:23:24
- - pauluZ   Po cichutku, bez dużego udzielania się na tym foru...   18.11.2010, 17:58:27
- - dr_bonzo   Masz calkiem sexi kod Kod$sek_s .= $i;   18.11.2010, 18:05:45
|- - phpion   Cytat(dr_bonzo @ 18.11.2010, 18:05:45...   18.11.2010, 19:39:16
- - Daimos   Cytat(phpion @ 18.11.2010, 19:39:16 )...   18.11.2010, 19:47:11
2 Stron V   1 2 >


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

 



RSS Aktualny czas: 21.08.2025 - 05:14