Algoritmické myslenie

Programovacie jazyky, rady, poradňa...
Paragon
Medium Star
Medium Star
Príspevky: 349
Registrovaný: 16 nov 2012, 20:14

Algoritmické myslenie

Príspevok od používateľa Paragon »

Má zmysel študovať "algoritmické knihy" keď mi nejde o to, aby som vedel 10 druhov radenia a spol., ale skôr o trénovanie schopnosti riešenia problémov?

Ak áno, ktoré knihy by ste doporučili? Podotýkam Knuth je veľmi náročný, niečo ľahšie.
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Algoritmické myslenie

Príspevok od používateľa BX »

Samozrejme, že to má zmysel. Pochopením týchto základných algoritmov a dátových štruktúr si otváraš úplne iný svet, ako riešením kadejakých hádaniek.
Dôležité je aj jedno aj druhé, no každé inak.
Ak poznáš takéto (základné) algoritmy a dátové štruktúry a skutočne ich chápeš (aj z pohľadu teórie zložitosti), si schopný rozhodnúť, ktorý algoritmus/DatŠtrukt. použiť na konkrétnu úlohu. Napríklad určite neplatí to, čo si myslí veľmi veľa (samozvaných) programátorov, že "quicksort je najlepší vždy a všade".
Ďalej sa dozvieš užitočné veci ako radenie v lineárnom čase, radenie nevyužívajúce C&S operáciu (Compare&Swap), ďalej vyhľadávanie v logaritmickom, alebo aj v loglog čase, na to nadväzujú binárne stromy, na to ďalej n-árne stromy, haldy, prioritné fronty a ďalej až k teórií grafov a to je už úplne iná rozprávka. Je toho naozaj veľa. A áno, správny programátor by tieto (aspoň základné) pojmy mal ovládať, pretože vďaka tejto teórií je schopný riešiť problémy na mieru a hlavne efektíve.
Taktiež analýza zložitosti týchto algoritmov ťa naučí, ako podobne analyzovať aj vlastné, tj. ako zistiť, či je tvoj algoritmus nie len funkčný, ale aj dostatočne efektívny na vyriešenie problému.

(pozn.: často neplatí pre javistov a webistov, ktorí proste použijú funkciu sort a nejakú predpripravenú všemocnú štruktúru a vôbec ich netrápi, ako pracuje, lebo im aj tak všetko funguje pomaly a sú na to zvyknutí... : D )
Paragon
Medium Star
Medium Star
Príspevky: 349
Registrovaný: 16 nov 2012, 20:14

Re: Algoritmické myslenie

Príspevok od používateľa Paragon »

A nejaké odporúčané tituly? Napr. je Topfer na začiatok dobrý?
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Algoritmické myslenie

Príspevok od používateľa BX »

Neviem, knihy nepoznám, tiež si môžem akurát prečítať popis a komentáre. Skús niečo nájsť a kúpiť, tiež je hlúposť dva mesiace len vyberať knihu. Čo ti nebude dobré na začiatok, bude ti možno dobré neskôr.
lowmanek
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 977
Registrovaný: 04 apr 2010, 8:53
Bydlisko: 221B Baker Street

Re: Algoritmické myslenie

Príspevok od používateľa lowmanek »

Topfera mám doma, nič tým nepokazíš, ale všetko je na nete a zadarmo. Začni napr. Liahňou https://liahen.ksp.sk/ pozri aj Kuchárku http://ksp.mff.cuni.cz/encyklopedie/kuc ... charky.pdf a to je z CZ/SK asi všetko, čo poznám :D
Neviem, ako si na tom s programovaním, ale na Coursera teraz začína kurz Algorithms: Design and Analysis, Part 1 https://class.coursera.org/algo-006 Naposledy som ho nedal, ale teraz som sa hecol, tak uvidím :D
Fabo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6810
Registrovaný: 16 nov 2007, 17:23
Bydlisko: 's Chravenhache
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa Fabo »

Coursera je fajn, blbe je, ze nemam cas na to. Najlepsie mi je mat normalnu fyzicku knihu, a vziat si ju trebars do cakarne k lekarovi, alebo do prace ked mam kus volnejsie, v lete do prirody. Da sa ciastocne nahradit tabletom.
Inak referenciu na dobry titul by som privital aj ja, kludne cudzojazycny ak je dostupny.
lowmanek
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 977
Registrovaný: 04 apr 2010, 8:53
Bydlisko: 221B Baker Street

Re: Algoritmické myslenie

Príspevok od používateľa lowmanek »

Fabo, čo konkrétne potrebuješ? Si na výške a chceš niečo kam sa pozrieš a spomenieš si na prednášku alebo všetko od základov?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa audiotrack »

Paragon napísal:Má zmysel študovať "algoritmické knihy" keď mi nejde o to, aby som vedel 10 druhov radenia a spol., ale skôr o trénovanie schopnosti riešenia problémov?
áno, aj nie. Zbytočne vymýšlať koleso keď už vymyslené je. Takže čím viac všeobecne známych algoritmov poznáš, tým lahšie vyriešiš úlohu lebo nemusíš riešiť to čo vyriešené je. Taktiež to nemusíš ladiť, lebo je to formálne dokázané ako optimálne riešenie. Ale ak ti nejde len o poznanie algoritmov ale chceš vedieť analyticky myslieť, tak ti nestačí iba toto. V takom prípade by som možno skôr odporúčal riešenie logických úloh. Radšej kúpiť knihu rébusov a hlavolamov :)
Fabo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6810
Registrovaný: 16 nov 2007, 17:23
Bydlisko: 's Chravenhache
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa Fabo »

lowmanek napísal:Fabo, čo konkrétne potrebuješ? Si na výške a chceš niečo kam sa pozrieš a spomenieš si na prednášku alebo všetko od základov?
Nie, som programator-samouk, ale chcem sa nejak posunut (o.i. aj z kariernych dovodov) a mam pocit ze k tomu potrebujem aj nejaku tu teoriu, jednak algoritmy a potom aj po stranke dizajnoveho procesu (alebo ako to nazvat).
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8217
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa harrison314 »

Fabo napísal:
Nie, som programator-samouk, ale chcem sa nejak posunut (o.i. aj z kariernych dovodov) a mam pocit ze k tomu potrebujem aj nejaku tu teoriu, jednak algoritmy a potom aj po stranke dizajnoveho procesu (alebo ako to nazvat).
Ak sa chces niekam posunut chod na vysku. Viem, ze by si radcj knihu, ale tam sa dozvies aj veci, co v knihach nenajdes.
Samozrejme nebranim citat knihy, sice o algortmoch velmi nepoznam, ale odporucamti Čistý kód, pomoze ti lepsie programovat a hlavne citatlenjsie.

" po stranke dizajnoveho procesu (alebo ako to nazvat)" - asi myslis toto http://cs.wikipedia.org/wiki/Proces_v%C ... e_softwaru
Fabo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6810
Registrovaný: 16 nov 2007, 17:23
Bydlisko: 's Chravenhache
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa Fabo »

Fasa, budes ma tych dalsich 5-6 rokov zivit? 80-100 tisic by mohlo snad stacit :D

Keby to bolo take jednoduche tak na tu vysku idem...
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8217
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa harrison314 »

Fabo napísal:Fasa, budes ma tych dalsich 5-6 rokov zivit? 80-100 tisic by mohlo snad stacit :D

Keby to bolo take jednoduche tak na tu vysku idem...
Ak musis ist externe tak to moze byt problem, no pocas liet si viesdaco zarobit, alebo byt dobri a mat stipendium.
No poznam ludi co to zvladli, aj ked to nemali jednoduche a pracovali kade tade, aby zaplatili skolne a internat.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa audiotrack »

Fabo napísal:Fasa, budes ma tych dalsich 5-6 rokov zivit? 80-100 tisic by mohlo snad stacit :D

Keby to bolo take jednoduche tak na tu vysku idem...
prednášky bývajú väčšinou verejné, na výšku môžeš chodiť a vedomosti naberať aj zadarmo, len nedostaneš titul
Fabo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6810
Registrovaný: 16 nov 2007, 17:23
Bydlisko: 's Chravenhache
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa Fabo »

Chlapi a zit budem z coho? Zit myslene nie na urovni studentskej, intraky menza, ale na normalnej urovni cloveka v produktivnom veku.

Na prednasky chodit nemozem, lebo chodim vtedy do roboty. Externe by bola moznost, keby to bola moznost (zistoval som, momentalne sa na vychode da len denne).
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Algoritmické myslenie

Príspevok od používateľa audiotrack »

na prednášky nemusíš chodiť osobne. To že sú verejné znamená že sú často poskytované materiály alebo dokonca streamy z prednášok na internete. Väčšinou to býva pre študentov, ale ak niekoho z výšky poznáš, mohol by ti to sťahovať a posúvať. Prípadne pohladať na nete, určite ich nájdeš kopec.
Ďalšou možnosťou je absolvovať nejaký MOOC program, napríklad na coursera alebo educase. Kurz si budeš robiť cez net kedy budeš mať čas (večer, víkend..)
Napísať odpoveď