Stránka 1 z 2

opět pascal

Napsal: 11 led 2006 20:28
od Jardafox
potřeboval bych naporgramovat něco na třídění kromě bubble sortu zvládně to tady někdo?
jinak bubble sort je třídění tuším pomocí porovnávání prvků
díky

Napsal: 11 led 2006 20:34
od jim.vw
takže třeba tohle? nevim jak se to jmenuje, vymyslel sem to sám...

Kód: Vybrat vše

for j:= 0 to pocet_cisel do
    begin
      for k:= 0 to pocet_cisel-1 do
        begin
          if polevole[j] < polevole[k] then
            begin                             
              temp:= polevole[j];
              polevole[j]:= polevole[k];
              polevole[k]:= temp;
            end;
        end;
    end;

Re: opět pascal

Napsal: 11 led 2006 20:40
od Ondras
jarda píše:jinak bubble sort je třídění tuším pomocí porovnávání prvků
díky
Dá se snad třídění naprogramovat jinak než porovnáváním prvků? Když už to nesmí být buble, tak si napiš nějakou prasánrnu, co sjede n-prvkové pole n-1 krát vždy od n-tého prvku do konce a nejnižší (nebo nejvyšší při sestupném třídění) nalezenou hodnotu prohodí s hodnotou na n-té pozici. Je to sice trošku variace na buble, ale může stačit. Jestli to nezvládneš, nemáš co dělat na škole, kde to po tobě vyžadují. :?:

Napsal: 11 led 2006 20:47
od Jardafox
no jeden podobnej bubble sortu jsem mu už poslal a prej to neee:D a řeknu to na rovniu, kdo by se s tím sral když už zápočet skoro mám, a navíc pascal vůbec nemá budoucnost takže to zkouším jestli to už třeba nemá doma někdo hotový?

Napsal: 11 led 2006 20:48
od Ritchma
Já už na programování seru z vysoka a budu studovat něco jinýho, zasraná věc. Koukni na http://ksvi.mff.cuni.cz/~topfer/ tam máš programy a něco by se ti tam mohlo hodit, třídění tam je

Napsal: 11 led 2006 20:53
od Jardafox
Ritchma píše:Já už na programování seru z vysoka a budu studovat něco jinýho, zasraná věc. Koukni na http://ksvi.mff.cuni.cz/~topfer/ tam máš programy a něco by se ti tam mohlo hodit, třídění tam je
jo já taky jsem rád že z toho mám zápočet a nemusím to vopakovat asi se začnu víc věnovat grafice, jinak když vidím vašeho přednášejícího tak podobá se docela tomu našemu:D taky tak divně mluví?:D

http://www.fi.muni.cz/usr/pelikan/ a to je on, mého srdce šamión:D

to JIM: tohle přesně jsem napsal taky to je právě ten bubble sort

Napsal: 11 led 2006 20:55
od Ondras
jarda píše:no jeden podobnej bubble sortu jsem mu už poslal a prej to neee:D
Důvod? fungovalo to vůbec? :)
jarda píše:a řeknu to na rovniu, kdo by se s tím sral když už zápočet skoro mám,
Tak na to ser a nech si ho skoro zapsat.
jarda píše:a navíc pascal vůbec nemá budoucnost
A učíte se to kvůli pascalu, nebo aby vás naučili myslet myslet algorytmicky? IMHO je to dnes většinou z druhého důvodu, protože má poměrně dobře čitelnou syntaxi (i když trošku plýtvá písmenkama :D )

Napsal: 11 led 2006 20:57
od jim.vw
Ritchma píše:Já už na programování seru z vysoka a budu studovat něco jinýho, zasraná věc. Koukni na http://ksvi.mff.cuni.cz/~topfer/ tam máš programy a něco by se ti tam mohlo hodit, třídění tam je
:smich:

a co to moje? mě s tim vyfuckoval že to prej není bublesort, o hodinách totiž dělam hovno, bo pařim Live For Speed, tak sem jen zaslech ze chce seřadit čísla načtený ze souboru, tak sem vymyslel tohle, odevzdal sem mu to a on mi říká že to mělo bejt bablsortem ale tohle není bublesort :lol:

Napsal: 11 led 2006 21:01
od Ondras
jarda píše:to JIM: tohle přesně jsem napsal taky to je právě ten bubble sort
To Jimovo je p*ču bubble sort!
Jim píše:odevzdal sem mu to a on mi říká že to mělo bejt bablsortem ale tohle není bublesort
Tak, tak. Bubliňák porovnává vždy 2 sousedící a v případě potřeby je prohodí. A to tak dlouho, dokud neproleze pole bez jediného prohození.

Napsal: 11 led 2006 21:05
od Jardafox
no však a tohle je to co napsal jim ne? kurva nebo já už na to fakt jebu nevyznám se v tom

jinak ten učitel mně odepsal že nechce bubblesort a posílal jsem mu přesně to co tady napsal Jim tak nevím no

Napsal: 11 led 2006 21:10
od Ondras
jarda píše:jinak ten učitel mně odepsal že nechce bubblesort a posílal jsem mu přesně to co tady napsal Jim tak nevím no
Jak jsem se díval na páně učitelovy stránky, jeho "vědeckou práci" a kariéru, tak se ti musím omluvit, ale takový člověk není patrně schopen nikoho nic naučit a jednoznačně potvrzuje pořekadlo a tom, kdo to neumí a ani tomu nemumí šéfovat. Jestli je někdo schopek sesmolit si doktorát z hypertextu a na své webové prezentaci předvádět takovouto pouť, tak je skutečně situace v našem vysokém školství tragická a můžu si jen gratulovat k tomu, na jaké učitele jsem na VŠ narazil já :roll: .

Napsal: 11 led 2006 21:24
od jim.vw
Ondras: Souhlas :(

Tohle bublesort není.. je to čistě náhodou sesmolený, protože sem nevědel, že to má bejt bublem...
Programování mě docela baví, je to jen o tom naučít se myslet a pak to jde samo...

Ondras: ty jsi profi programátor, že se tak vyznáš?

Napsal: 11 led 2006 21:25
od Ritchma
No mluví normálně, ale je divnej. USB flashku si nosí v igeliťáku, nosí si úhledně zabalený svačiny a čaj v lahvy od dobrý vody, ke kalhotám od saka nosí černý prestige a směje se naprostejm hovadinám. Prostě cvok

Napsal: 11 led 2006 21:28
od ddt
BTW... bubblesort je nuda... ale da sa jednoduchym trikem prinutit aby byl 1x rychlejsi... pustam stopky, kdo me rekne jak :lol:

Napsal: 11 led 2006 21:29
od Ondras
Jim píše:Ondras: ty jsi profi programátor, že se tak vyznáš?
Ne, i když vlastně taky v práci programuju, obživu mi zajišťují chybující "skuteční" programátoři. Když tak více přes SZ...

Napsal: 11 led 2006 21:32
od Ondras
ddt píše:BTW... bubblesort je nuda... ale da sa jednoduchym trikem prinutit aby byl 1x rychlejsi... pustam stopky, kdo me rekne jak :lol:
No 1x rychlejší (= stejně rychlý) bude i bez jakékoli změny se stejným vstupním polem, že ano :D

Napsal: 11 led 2006 21:33
od ddt
dovolim si trochu poopravit:

for j:= 0 to pocet_cisel-1 do
begin
for k:= j+1 to pocet_cisel do
begin
if polevole[j] < polevole[k] then
begin
temp:= polevole[j];
polevole[j]:= polevole[k];
polevole[k]:= temp;
end;
end;
end;


a kdyz chce byt nekdo hovado co do alokovani pameti ale je to opravdu zverstvo, ale na lowlevel urovni by to melo byt rychlejsi:

polevole[j] := polevole[j]+polevole[k];
polevole[k] := polevole[j]-polevole[k];
polevole[j] := polevole[j]-polevole[k];

Napsal: 11 led 2006 21:35
od ddt
Ondras píše:No 1x rychlejší (= stejně rychlý) bude i bez jakékoli změny se stejným vstupním polem, že ano :D
na vstupu nezalezi... na jekemkoliv vstupu je upraveny bubblesort presne 1x rychlejsi nez origo na stejnem vstupu...

Napsal: 11 led 2006 21:39
od ddt
ddt píše:
Ondras píše:na vstupu nezalezi... na jekemkoliv vstupu je upraveny bubblesort presne 1x rychlejsi nez origo na stejnem vstupu...
kecam... na obecnem vstupu... a nebude presne 1x rychlejsi, ale vzdycky bude rychlejsi, minimalne stejne rychly... na obecnem (100% nahodnem) vstupu bude statisticky 1x rychlejsi... abych byl presny

Re: opět pascal

Napsal: 11 led 2006 21:41
od Ondras
Počkej, počkej, 1x rychlejší = stejně rychlý jako neupravený. Nemyslíš náhodou 2x rychlejší?

Re: opět pascal

Napsal: 11 led 2006 21:45
od ddt
Ondras píše:Počkej, počkej, 1x rychlejší = stejně rychlý jako neupravený. Nemyslíš náhodou 2x rychlejší?
no, vyjadrovaci schopnosti nula... samozrejme... bude hotovy za polovicni cas, pritom bude dodrzene to ze se budou menit jednom sousedni prvky...

Re: opět pascal

Napsal: 11 led 2006 21:54
od Ondras
ddt píše:no, vyjadrovaci schopnosti nula... samozrejme... bude hotovy za polovicni cas, pritom bude dodrzene to ze se budou menit jednom sousedni prvky...
Pohoda, já to tušil. Co já vím, střelím od boku: bude si pamatovat, kdy v dané iteraci poprvé prohazoval sousedy a v následující pojede až od pozice prvního prohozu?

Napsal: 11 led 2006 21:56
od jim.vw
pánové .. :respect:
mám se jěště hodně co učit :lol:

Napsal: 11 led 2006 21:59
od Jardafox
ondrasi ty ses betatester?

Re: opět pascal

Napsal: 11 led 2006 22:00
od ddt
Ondras píše:Pohoda, já to tušil. Co já vím, střelím od boku: bude si pamatovat, kdy v dané iteraci poprvé prohazoval sousedy a v následující pojede až od pozice prvního prohozu?
nemusi si pamatovat nic... je to jednodussi nez to vypada... ale toto je take celkem dobra optimalizace...

Napsal: 11 led 2006 22:02
od Ondras
jarda píše:ondrasi ty ses betatester?
Ne, regresní tester, dělám automatizované testování. Když se mě někdo ptá, co dělám, tak radši řeknu, že dělám s počítačem :D

Napsal: 11 led 2006 22:08
od ddt
Ondras píše:Ne, regresní tester, dělám automatizované testování. Když se mě někdo ptá, co dělám, tak radši řeknu, že dělám s počítačem :D
ja rikam ze si s nema hraju :lol: :lol: :lol:

BTW... reseni: stridas pruchody, jedou zepredu, podruhe odzadu pole... 8)

Napsal: 11 led 2006 22:11
od jim.vw
ddt píše:BTW... reseni: stridas pruchody, jedou zepredu, podruhe odzadu pole... 8)
heh.. už si vzpomínám.. no jo.. :lol: to víš dělal sem to naposled před 2 a pul rokama :twisted:

Napsal: 11 led 2006 22:14
od Ondras
ddt píše:BTW... reseni: stridas pruchody, jedou zepredu, podruhe odzadu pole... 8)
Heh, zajímavé, to fakt zabere? By mě zajímalo, jestli ten můj nápad se průchody od posledního prohozu statisticky něco přidá. Skoro mě to láká rozjet si tu PHPko (to je tak jediné, v čem jsem kdy profesionálně programoval :oops: ) a pustit si v něm tak 1000 sortů nějakých povětších polí a porovnat to.... Kurde, jak to po sobě čtu, tak je to jak od nerda, tak to ne! Nic nebudu zkoušet.

Napsal: 11 led 2006 22:22
od ddt
Ondras píše:Heh, zajímavé, to fakt zabere? By mě zajímalo, jestli ten můj nápad se průchody od posledního prohozu statisticky něco přidá. Skoro mě to láká rozjet si tu PHPko (to je tak jediné, v čem jsem kdy profesionálně programoval :oops: ) a pustit si v něm tak 1000 sortů nějakých povětších polí a porovnat to.... Kurde, jak to po sobě čtu, tak je to jak od nerda, tak to ne! Nic nebudu zkoušet.
On je figl v tom, ze bolest bubble je v tom kdyz mas treba
10 - 10 - 10 - 1
tak normalne potrebujes tusim z hlavy odhad - 4 -5 projit cele pole... pri stridani pruchodu ti to seradi na druhy...
kdysi davno sem to aj pocital... ale to uz je hoooodne davno, ale mam pocit ze statistika nakonec rekla ze obecne je to 1.5x rychlost klasickeho nebo tak neco...