» »

Koliko racunalnistva zares potrebujete v sluzbi?

Koliko racunalnistva zares potrebujete v sluzbi?

zacetnicek ::

Cisto iskreno, koliko temeljnih racunalniskih znanj, kot so analiza in nacrtovanje algoritmov, racunska zahtevnost, aproksimacijski algoritmi in podobno, potrebujete pri vasem vsakdanjem delu? Koliko bi vas se znalo analizirati racunsko zahtevnost kakega neklasicnega algoritma (s tem mislim od zastavljanja npr. rekurzivne enacbe (ce se bi se odlocil za tak tip analize) pa do iskanja zaprte oblike)? Ali pa koliko se vas se spomni kaj je amortizirana casovna zahtevnost in kaj je pricakovan cas izvajanja ter kaj pomenijo rezultati tipa "tece v casu T(n) z visoko verjetnostjo"? In koliko bi vas znalo, ce bi bilo potrebno, implementirati npr. preskocni seznam tako kot je treba?

Invictus ::

Kaj je preskočni seznam? A nihče ne uporablja več angleščine?

Gre se pač za vajo v programiranju. Kar ti na koncu koristi. Drill.

Če iščeš izgovore zakaj se tega ne bi učil, nisi prav prišel...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

Irbis ::

Potrebno znanje je zelo odvisno od projektov, na katerih delaš. V večini svojih projektov sem npr. potreboval samo cela števila, bi moral skoraj pogledati v help, da bi znal izpisati en float na ekran. Po drugi strani sem se pa ogromno ukvarjal s podatkovnimi strukturami, raznimi drevesi, indeksiranjem podatkov. In tudi z ocenjevanjem časovne in prostorske zahtevnosti.
Ampak čeprav mi npr. numerična matematika sama po sebi ni nikoli prišla prav, ker sem nisem ukvarjal s takimi problemi, mi je npr. zelo prav prišlo par idej iz uporabe redkih matrik, ki sem jih uporabljal pri numerični matematiki na faksu.

66speeder66 ::

A lot! Tist k je na faks je bl teoriziranje... But ok. Drugače pa odvisno od poklica. Če boš cel živlenje sam web page urejal tud ni glih velik.
Ne moreš imeti vsega verjetno... al pa ja no, ampak... mogoče...
ne vem...
la toya

zacetnicek ::

Invictus je izjavil:

Kaj je preskočni seznam? A nihče ne uporablja več angleščine?

Gre se pač za vajo v programiranju. Kar ti na koncu koristi. Drill.

Če iščeš izgovore zakaj se tega ne bi učil, nisi prav prišel...


Sploh nisi odgovoril na vprasanje. Na nobeno od vprasanj, pravzaprav.

Ravno obratno: iscem izgovore, zakaj bi to, no, raziskoval. In s svojim "condescending attitude" (da uporabim malo anglescine :-) si mi dal dodaten razlog, da ostanem v skupnosti, kjer vprasanje naprej preberejo, o njem razmislijo in nanj spostljivo odgovorijo.

66speeder66 je izjavil:

A lot! Tist k je na faks je bl teoriziranje... But ok. Drugače pa odvisno od poklica. Če boš cel živlenje sam web page urejal tud ni glih velik.


Kje si pa zaposlen, ce ni skrivnost? In kaksna je tvoja vloga v podjetju?

Zgodovina sprememb…

AndrejO ::

zacetnicek je izjavil:

Cisto iskreno, koliko temeljnih racunalniskih znanj, kot so analiza in nacrtovanje algoritmov, racunska zahtevnost, aproksimacijski algoritmi in podobno, potrebujete pri vasem vsakdanjem delu? Koliko bi vas se znalo analizirati racunsko zahtevnost kakega neklasicnega algoritma (s tem mislim od zastavljanja npr. rekurzivne enacbe (ce se bi se odlocil za tak tip analize) pa do iskanja zaprte oblike)?

Cca. 1x do 2x mesečno. Ne vedno vse od tega, ampak enkrat ene, enkrat druge stvari od naštetih.

zacetnicek je izjavil:

Ali pa koliko se vas se spomni kaj je amortizirana casovna zahtevnost in kaj je pricakovan cas izvajanja ter kaj pomenijo rezultati tipa "tece v casu T(n) z visoko verjetnostjo"? In koliko bi vas znalo, ce bi bilo potrebno, implementirati npr. preskocni seznam tako kot je treba?

+1.

smoke ::

Invictus je izjavil:

Kaj je preskočni seznam? A nihče ne uporablja več angleščine?


Preskočni seznam je skip list.

chort ::

Cca enkrat mesečno, ampak pri meni je programiranje in skriptanje bolj postranska dejavnost, ki mi olajša osnovno - obdelavo prostorskih podatkov.

Je pa efektivno programiranje pri obdelavi prostorskih podatkov precej pomembno, ker je podatkov ogromno in običajno delaš z miljardami točkovnih meritv.

edit: typo

Zgodovina sprememb…

  • spremenilo: chort ()

smacker ::

Podatkovne strukture: ful koristi če veš kake podatkovne strukture obstajajo in kako delujejo. V praksi itak uporabiš implementirane verzije, ampak najbolje si boš zapomnil principe, če jih boš sprogramiral. S tem tut dobivaš prakso kodiranja in debugiranja. S pravilno izbiro podatkovne strukture lahko občutno zmanjšaš časovno zahtevnost algoritma.
Algoritmi: Podobno kot s podatkovnimi strukturami, le da je težje uporabit knjižnice, ker je treba algoritem navadno vsaj malenkost prilagodit za posamezen problem.
Računanje zahtevnosti: ves čas, ampak v glavi. Za vsako zanko/rekurzijo ki jo napišeš, razmisliš kolikokrat se bo izvedla. In ko jih gnezdiš, razmišljaš če res rabiš gnezdenje, ali lahko optimiziraš. Z resno optimizacijo se pa ukvarjaš, ko ugotoviš da se del kode predolgo izvaja, takrat je treba tut na papir kaj zapisat in poračunat.

Je pa odvisno s čem točno se ukvarjaš. Frontend web razvijalec ne bo rabil več kot kakega arraya in sorta (vse implementirano v javascriptu). Backend programer se pa pogosto sreča z obdelavo velikih količin podatkov, ko je treba nekaj izračunat/izvlečt iz več miljonov številk. Takrat pridejo ta znanja še kako prav.
Implementacija skip lista? Z lahkoto :)

111111111111 ::

Skip list, znam. :)

Tvoje naštete stvari uporabljam, ko optimiziram kak software, ki ga je zapustil moj predhodnik.

noraguta ::

Veči del vse prav pride. Da ne brskašza stvarmi katere si se pač naučil. Ni pa univerzalnega pravila , da te bodo zdrilali glih za tvoj šiht. Ampak pomoje fri ni najbolj optimalna pot do znanja. Ampak to je samo pomoje.
Pust' ot pobyedy k pobyedye vyedyot!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

enojno povezan seznam -izpis nazaj

Oddelek: Programiranje
243640 (3180) Randomness
»

Za programerske teoretike

Oddelek: Programiranje
478817 (5619) Jerry000
»

Časovna zahtevnost

Oddelek: Programiranje
223115 (2659) technolog
»

Naprednješa knjiga o programiranju (koncepti, ...)

Oddelek: Programiranje
366135 (5306) noraguta

Več podobnih tem