163
-
#163 Igen. 8,8,6,4 óraszámvan. Ezt is kevésnek tartottam... -
Zoleeca #162 Folytonos legyen a függvény és bármelyik pontjában legyen első deriváltja, ezt próbáltam valahogy elmondani úgy, hogy aki nem tanulta az is felfogja miről van szó. De úgy látom te tanultál valami matekot :) -
Zoleeca #161 :))))
"Értem a problémát valszeg, de esélyem sem lenne megcsinálni. Nem vagyok programozó."
Nincs is ezzel semmi baj. Én sem hiszem, hogy meg tudnám csinálni, de tudom merre és hogyan érdemes elindulni. Ugyanakkor biztos Sanyix is tudna nekem olyan feladatot adni, amiről meg nekem nem lenne lövésem. Ez így is van rendjén, csak épp vannak emberek akin nem tudják elfogadni, hogy reggel nem az ő seggükből kel fel a nap ;)
Tudni kell hol vannak a határaink, mert az bölcsé tesz. Ismerek olyat akinek fingja sincs erről és állandóan csak az arcoskodás megy és egyszerűen sosem képes őszintén azt mondani (vagy legalább gondolni és elfogadni azt) hogy nincs igaza, tévedett stb. -
#160 A levegő oxigént is tartalmaz nem? Tehát igazat mondott, csak a többi anyag őt nem érdekelte. Persze tényleg fura, de vannak fura emberek. -
#159 Nem arról van szó, hogy "gradiensillesztést" kell csinálni a mért pontok alapján? Minél több mérés van annél könnyebb. Bár több adat lesz, részletesebb kép, de jobb kód kell a "simításhoz". Értem a problémát valszeg, de esélyem sem lenne megcsinálni. Nem vagyok programozó. Ez a baj. Még fejben is megvan a blokkséma, hogy mit csinálnék, de kódot nem tudok hozzá írni... -
Zoleeca #158 #149 -re is várom a választ. De ne googlizással válaszolj, mert a C nyelvet csak azért mondtam, hogy kb. értsd miről van szó. Lehet ne az mondjuk K++ is amit épp most találok ki. És ismét felhívom a figyelmet a feltételekre. -
Zoleeca #157 "matematikai eljárással számol valamit, a környező mérőpontok segítségével."
Na erre lennék kíváncsi mert édeskevés amit leírtál. És ne mond, hogy kigooglizod a dolgot. Titokban elárulom, hogy a - legalábbis nekem tanított - legkeményebb és legnehezebben megérthető matematikai elméleteket taglaló tantárgy van a háttérben.
Félreértetted, bár az első megfogalmazás nem volt tiszta, de te amúgy is a másikra válaszoltál, szóval...
Nem hőtérkép kell, hanem egy program ami tetszőleges x,y pontban és z időpillanatban meghatározza a hőmérséklet értékének legjobb közelítését a felsorolt feltételek mellett (!!!). Ezt NEM tudod megcsinálni OKJ-és képzéssel. Ami nem is baj, mert nyilván nem olyan gyakran van szükség rá - de van. Ha pedig ezt is kétségbe vonod és nem látod egy ilyen feladatnak a gyakorlati hasznát, akkor szerintem a témát le is zárhatjuk. Mondjuk először meg kellene érteni a feladatot. -
homeless #156 De bazdmeg ti úgy beszéltek mint ha az okj-n csak tökéletes szakembereket képeznének, egyetemen meg csak retardáltakat. Istenem mennyi okj-s "informatikust" ismerek, akik postásként meg eladóként dolgoznak. Persze ismerek 1-2 főiskolást is akik valószínüleg meg fogják kapni a diplomájukat, mert bemagolnak minden szart, de még a számítógép bekapcsolásához is segítségre van szükségük. Nem a végleteket kéne nézni. Elhiheted, hogy okj-sok között százszor több használhatatlan ember van mint diplomások között. -
#155 persze ez nem mindenkire vonatkozik, csak kb arra aki kizárólag az egyetemre/főiskolára hagyatkozik, de ha arra hagyatkozva nem tud semmit, akkor meg minek? Ok jól jöhet a papír sürgős esetben de ezért? :D -
#154 hülyeség, hülyeség...
pont hogy szögelődroidokat képeznek az egyetemen, szépen ilyen programozási mintákat mutogatnak (nekem is volt ilyen tantárgyam, a fősulin), ebből tanuló profiknak ha véletlenül nem hasonlít a feladat valamelyik mintára, akkor csengő van...
Aztán meg a friss diplomást leültetik a gép elé, itt a feladat, tervezd meg, írd meg, akkor megint csengő van...
Akkor mit tudnak?
Komolyabb dolgoknál való pislogást inkább a diplomásoknál hallottam.
Ja a kedvencem: 3 diplomás emberke (bár nem info), fölényeskedve szól az "alacsonyabb rendűnek" hogy ki kéne nyitni az ablakot, hogy bejöjjön az "oxigén"... visszakérdezés: oxigén? - Igen oxigén. -Nem inkább levegő? - Nem, oxigén! ok bb -
#153 És ebbe mi a nagy diplomaszükséges dolog? Ha jól értem egy ilyen szép szines hőtérképről van szó, amiben az x helyen mért hőmérsékleteket 255 "fokozatban lehet elmenteni, és az elhelyezett mérők pillanatnyi értékéből kiszámol egy szép színes hőtérképet(y mintavételezési) alkalommal, és ahol nincs mérő ott matematikai eljárással számol valamit, a környező mérőpontok segítségével. És ezt különböző időpontokra lehet nézni (mondjuk 13:00 egy térkép, 14:00 másik). Valahogy így értelmezem, már ha érthetően írtam le hogy mire gondolok, ami nem biztos :D
De ez megint olyan, hogy belegondolsz, kiguglizod a hozzá tartozó képletet és megírod. -
Zoleeca #152 beszéltek = beszélek -
Zoleeca #151 "Számolhatsz hőmérsékletet tetszőleges pontban csak az nem feltétlenül lesz igaz."
Persze hogy nem, ezért írtam, hogy az értékek legjobb közelítését adjuk meg. -
Zoleeca #150 Ja és még az is legyen elvárás, hogy az egyes (pl. mérési) pontokban a program által meghatározott értékek által előállított görbe, szintén rendelkezzen bármely pontjában érintővel.
Csak azért beszéltek konyhanyelven, hogy ne kelljen sokat googlizni már a feladat megértéséhez sem. -
Zoleeca #149 Akkor itt a másik feladat. Írj szintaktikai ellenőrző programot, amely bemenetként egy szövegfájlt vár és ellenőrzi, hogy a fájl szintaktikailag egy helyes C forráskód-e vagy sem. Ha nem akkor jelezze az első hibát, ahol "elbukott" a forráskód. Mindezt lineáris időben tegye, lineáris bonyolultságú legyen az algoritmus. -
homeless #148 Ennyi faszt! Nekem se tetszik a magyar felsőoktatás, nekem sincs diplomám, de amit itt egyesek összehordanak... A matekot mindenki utálja, de ha úgy tetszik a programozóknál ez az alapműveltség része. Lehet, hogy manapság a legtöbb program abból áll, hogy adatbázisba beírunk valami adatot, után adatbázisból kiolvasunk valami adatot, de ez egy lófasz. Ilyet még nagyanyám is megír bármilyen nyelven. Egy egyetemen nem ilyen szögelődroidokat képeznek. Ha már valami komolyabb dolgot kell megírni, akkor az összes ilyen "okj-s programozó" csak pislog, vagy napokig csak guglizik. Ezért kellenek a 4-5 év tapasztalattal rendelkező diplomás programozók, hogy komplexebb programokat megtervezzenek. Programozni bármilyen retardáltat meg lehet tanítani, de komolyabb matekot csak egyetemen tanítanak. -
Zoleeca #147 "Az így kapott felület bármely belső pontjában létezzen érintősík."
Itt felület alatt az egy adott időpillanatban az összes pontban mért eredmények által alkotott felületre gondolok.
Molnibalage: ne erre fókuszálj. Próbálj elvonatkoztatni és megoldani a feladatot. Amikor pl. matek órán azt mondja neked a tanár, hogy húzz párhuzamos egyeneseket, akkor sem mondod neki, hogy hát még csak egy egyenest sem tudok húzni nemhogy két párhuzamosat.
Itt most a matematikai megközelítés a lényeg. A sok pont nyilván lehet 10 ezer is én nem limitáltam a mérések számát, csak azt kértem, hogy a program legyen felkészítve a tetszőleges mérés eredményének feldolgozására. -
#146 Az eredmény nem lesz jó. Számolhatsz hőmérsékletet tetszőleges pontban csak az nem feltétlenül lesz igaz. Mivel a meteorológiai jelenségek közel sem anizotrópak, van doborzat és a talaj is különbözőféleképpen sugároz vissza. Szóval kiszámolható egy eloszlás, de kissé irreleváns lesz a dolog. Ahhoz nagyon sok pontban kéne mérni. -
Zoleeca #145 Lehet kicsit homályosan fogalmaztam, de nézzétek el nekem, mert csak most találtam ki a feladatot és kicsit félreérthetően foglmaztam az átmenettel kapcsolatban. Szóval.
Az ország X tetszőleges különböző pontján egy nap Y hőmérséklet mérést végzünk (tetszőlegesen feloszthatjuk az egy napnyi időtartamot). A mérési eredményeket felhasználva készítsünk olyan programot, amely tetszőlegesen megadott helyen tetszőleges időpontban megadja a hőmérséklet értékének legjobb közelítését, úgy hogy a mérési helyeken és a mérési időpontokban pontosan az elvárt értéket kapjuk vissza. Az így kapott felület bármely belső pontjában létezzen érintősík.
Óra indul ;) -
Zoleeca #144 Na jó akkor itt egy példa, bár ez nem igazán tervezéssel kapcsolatos. Hogyan oldanád meg a következőt:
Egy progarmot kell írnod amely az ország X különböző (tetszőlegesen elhelyezett) pontján mért hőmérsékletekből az egész országra elkészít egy hőtérképet "átmenetek" nélkül (mondjuk ez jelentse első körben azt, hogy 256 értéket különböztetsz meg, mondjuk legyen a 0 = -10 Celsius, a 255 pedig +40 Celsius, de ez részlet kérdés). Ha ez megvan, akkor ezt fokozzuk tovább és vegyük be az időt is mint tényezőt (mondjuk napi Y mérés felhasználásával) és készítsünk egy olyan képsorozatot, melynek minden kockáját az előbbi módon állítottuk elő. Legyen mondjuk percenként egy képkocka (1440 képkocka) és feltételezzük, hogy Y << 1440. És itt is próbáljunk meg folyamatosságra törekedni (tehát csak a végleges megjelenítéskor kerekítsünk, nem pedig számoláskor). -
mrzool #143 "Vagy ez normális átlag, hogy 75% inkább menekül a adott szakágból?"
Igen, ez a normális. RENGETEGEN vannak úgy vele, hogy brahiból beadják, mert menő dolog infósnak lenni, és ha már látott 2 PC-t, akkor elhiszik magukról, hogy ők fújják a passzátszelet. Na ők jobb is, hogy kiesnek.
Egyébként meg be lehet kapni. Mást se mondtok, csak hogy szar a 'programozói ismeretek' oktatása. Hát nem ártana a másik oldalról (diákok oldaláról) is megvizsgálni a kérdést! Mikor Java gyakorlatvezető voltam, a 20 fős csoportből egy kezemen meg tudtam számolni kiket érdekelt az óra.
Tudom, most megkaphatom, hogy biztos én voltam a hibás, de könyörgöm, aki a félév első óráján azzal indít, hogy bejön, felírja a nevét a jelenléti ívre, majd lelép, az szerinted mennyire érdekelt a tananyag elsajátításában? Vagy aki bejön melegedni és a leveleit nézni? És akkor még nem is hoztam szóba az átlag nebuló (nem létező) önálló problémamogoldó és absztrakciós készségét. -
#142 "Ha távol állsz egy gömbtől akkor a gömb poligonszámát lecsökkentik mert úgysem látod minek terhelje a gépet."
Ezt még én is ismerem. LOD kezelés. Ez ősrégi módszer nem? -
bakagaijin #141 Az a 75% az nem menekül, hanem alkalmatlan... Menekülni csak aktívan lehet, semmit nem tevés az nem aktív cselekedet... Pl. kifutni tíz éves időkorlátból, az menekülés, vagy kibukni az első komolyabb vizsgákon? -
bakagaijin #140 Nem, már nem :). -
Carsee #139 Egyetértek. Egy szóval sem állítom, hogy abból élek amit az iskolában tanítottak meg nekem. Az a tudás amit magam szereztem meg iskolán kívül, olvasással, kísérletezgetéssel....abból bírok megélni. Sok olyan dolgot tanítanak GDF-en, amit nem kellene, de ez más iskolában is így van. Nem fér a fejembe, hogy miért kellene egy mérnök informatikusnak, mikro- és makroökonómiát tanulnia, gazdaságtannal stb. Programozást mi is tanultunk, de a vizsgán át lehetett menni egy alap tudású számológéppel :O Valaki megelégedik vele, valaki meg unatkozik és komolyabbat mutat be... Jómagam egy JDBC alapú (az adatbázis a feladatomban kikötés volt) multiplayer amőba volt :)) Na most előtörtek az emlékek :DD
Én csak az ellen "harcolok", hogy ne csak az iskola alapján ítéljék meg az embert... -
roliika #138 Tehát tanár vagy..vagy oktató. Volna lehetőséged szólni, hogy a képzés nem olyan mint amilyennek lennie kéne. Miért nem teszel semmit? Vagy ez normális átlag, hogy 75% inkább menekül a adott szakágból? Persze lehet nem tudsz ellene mit tenni nem voltam főiskolai oktató és nem is kívánok az lenni. Volt OKJ-s oktatóim nagyon bírtam...mert a diákokhoz...hozzánk pozitívan álltak, és a lehető legújabb technikákat oktatták..noha nem feltétlen az volt nekik előírva (volt ilyen nekik hogy 200 óra egérkezelés...Delphi programozást oktattak inkább mert látták hogy tettszik nekünk)...nem az oktató a hibás..hanem az az idióta bagázs aki ilyen tanterveket ad ki!
Úgy érzem gáz, hogy az oktatók bevallották nekünk, hogy most(1 éve...panaszkodtak mert megszűnt a programozó képzés)olyan dolgokat oktatnak aminek nincs értelme, ezt ők is tudják, a diákok is sejtik...nos 1 éve mindketten otthagyták a tanári állást és most banki rendszereket programoznak. -
barr #137 Én is hallottam már több helyről, viszont ettől függetlenül lehet urban legend. Állítólag ilyen a debreceni egyetmről kikerültekre is elhangzott anno, akkor keményítettek egy kicsit a képzésen. A mostani helyzet az hohy szvsz a debreceni képzés védjegye a logika (powered by Várterész tanárnő) és Pici személye. Mindketten hatalmas koponyák, viszont emberileg Juhász tanár úr az akit tisztelek is. Másrészt ő az aki nagyon nyitott a minőségi de gyakorlatorientált képzés felé, ő képviseli azt az irányvonalat hogy kézzelfogható és hasznos tudást adjon át a diákjai számára és emellett rengeteg céggel tart kapcsolatot, a Programozási technológiák előadásra tavaly külsős előadások is bekerültek,pl volt egy IT Service-szos DBA és egy azért erősen marketinges iBolt-os csóka. Mindemellett ha egyetemi és programozóképzésről van szó, állítólag a szegedi a legjobb(vannak iszonyatos jó jegyzeteik, szoktam is olvasgatni), utána az ELTE (szerintem ott már tényleg sok a matek, habár egyes terülteken minden bizonnyal iszonyatos hasznos lehet), utána a cívis város és végül Miskolc.BME ugye lecsúszik a listáról, mert ott konkrétan programozó képzés nincs,ha még aktuális a 2005ös helyzet:) Az előbbi lista szigorúan szubjektív, fősulikról nem tudok nyilatkozni. -
bakagaijin #136 Amit írtam az alapvetően BME, amit olvastam kommentek, azok alapján a többiek is erről beszéltek. Vannak különbségek a GDF és a BME között, ezt remélhetőleg senki nem tagadja.
Tartottam gyakot és vizsgáztattam GDF-en, annak a szintjéről tudok nyilatkozni. Illetve azt is tudom, hogy amivel a BME-n nyitnak - mármint hogy a felvettek 75%-ból SOHA nem lesz mérnök - ez is igaz. -
#135 "Egyébként pontosan hogyan zajlik ez? Mivel nem tudok programozni el tudná valaki mesélni úgy, hogy én is értsem. Pl. arról van szó, hogy más matematikai algoritmussal számolnsz valamit? Vagy értelmesebb sorrendben hívsz le adatot, hogy a memória gyorsabban "egye" meg? Stb...?"
Igen, nagyjából ilyesmi. Az optimalizálás ott kezdődik, hogy kitalálod milyen algoritmusokat és adatszerkezeteket érdemes használni. Pl. ha tudod, hogy van egy rakás adatod, ami nem fog változni, akkor bináris fát használsz a tárolására, mert abban lehet a leggyorsabban keresni. A beszúrás viszont sokáig tart, és macerás. Ha viszont valami olyan tároló kell neked, amibe gyorsan tudsz beledobni egy elemet, és gyorsan akarsz hivatkozni az n. elemére, akkor elég egy sima vektor is.
Vagy ott van pl. a 3D megjelenítés. Ugye minden kirajzolt objektum kis háromszögekből áll, amiből rohadt sok van. Nagy részét viszont nem is látod, mert a nézőponthoz közelebb lévők takarják a hátsókat. Csak ezt a takarást minden egyes poligonra kiszámolni rohadt költséget.
Az Unreal motorja pl. azt csinálja, hogy a pályát felszeleteli konvex darabokra, és egy logikai fába szervezi (BSP - Binary Space Partitioning). Így rengeteg objektum kirajzolását meg lehet spórolni, egyszerűen csak meg kell nézni, hogy a kamera és a kirajzolandó objektum hol vannak a fában. Ez kb. olyasmi, mintha belépnél egy lakásba, és olyan helyre mennél, ahonnan a fürdőszobának még az ajtaját sem látnád. Ha még az ajtót sem látod, akkor a fürdőszobát pláne nem, ergó a benne lévő dolgokat nem is kell "kirajzolni".
Az ilyen megoldások kitalálásához kell a széleskörű ismeret, úgy mint algoritmusok, adatszerkezetek, kis bonyolultságelmélet, gráfelmélet, grafika, diszkrét matematika, és még sorolhatnám.
Lehet, hogy az OKJ okleveles programozó gyorsan és optimálisan ír kódot, viszont ilyeneket megfelelő előismeretek nélkül soha nem fog kitalálni, de még lehet, hogy megvalósítani sem.
Persze ott van a kód szintű optimalizálás is, amikor a fordító kiköp valamit, azt a tesztelők megvizsgálják, hogy melyik kódrész fut legtöbbet, aztán elkezdik akár assembly szinten hackelgetni, hogy pl. a változókat minél tovább regiszterekben tartsák, a proci minél kevesebbszer használja a cache-t, memóriához csak legvégső esetben nyúljon, ésatöbbi. -
#134 persze hogy fogalmam sincs miről beszéltek, valószínűleg nektek sincs. Már írtam, konkrét példát kérek ezekre a tervezéskori jóságokra, amíg ez nincs okoskodó bullshittelés marad.
A főiskolán meg kb ilyen ismereteid lehetnek: minden csak amire valaha szükség lehet az nem.
Mellesleg igen fél év alatt látom mennyire köze nincs tárgyakat tanítanak, azt is ahogy a tanár se tudja miről beszél, azt is ahogy a példaprogramjaiban olyan alap, és egyébként hatalmas hibák vannak, hogy egy melóhelyen közröhej tárgyává válna, ha nem rúgják ki azonnal...
Merem állítani, ahogy sokan azok közül is megállapították akik ki is jártak ilyen szakokat... -
#133 nem. De ahogy hallom te jobb helyre jártál, nekünk elektronikán még szűrőkről se beszéltek.... 6346456445456 voltos 7457456456 amperes generátoros omgwtf vasakról volt szó INFORMATIKA SZAKON. -
Carsee #132 Én is a Gábor Dénesen végeztem és nem szeretném letagadni. Tanulni mindenhol lehet ha akar az ember...
Még soha sem láttam ilyen hirdetést... -
Zoleeca #131 :DDDDD -
barr #130 Debrecen Gandalfja:P -
Zoleeca #129 Nem vagyok a kisbarátod (ha mondjuk a nevemre kattintasz láthatod, hogy még idősebb is vagyok valamivel).
Abból, hogy megint a kód optimalizálásról olvasok a hozzászólásodban, arra következtetek, hogy fogalmad sincs miről beszéltem, vagy miről beszélnek a többiek (pl. bakagaijin), amikor mondjuk matematikai modellről/tervezésről beszélünk. Ez nem az amikor már konkrét kódolás közben gondolkozol azon, hogy hogyan is kellene gyorsabbra megírni. Oké, lehet a for ciklusos példám nem volt a legjobb.
Ezzel persze nem azt mondom, hogy az utólagos optimalizálásra nincs szükség. Ugyanúgy fontos az is, ezt csinálja meg mondjuk az OKJ szakképzett programozó - valószinűleg hatékonyabb is lesz, mint egy diplomás. De a magasabb rétegben - tervezés stb. - ne ők döntsenek, hanem egy olyan programozó, aki rendelkezik megfelelő ismeretekkel ehhez (neadjistem ő nem is tudná olyan jól leprogramozni az adott konkrét feladatot). De nyilván ez is függ a projekttől. Igen vannak olyan projektek, ahol tökmindegy, de ettől még nem te leszel a alfa és az omega a programozásban. Én elhiszem hogy tökéletesen el tudod végezni a munkádat, de ettől még nem a te ismereteid lesznek mérvadóak programozásban úgy általában, és ettől nem válik a diploma feleslegessé.
Ezt kellene megérteni és nem fikázni egymást. Különböző munkák/különböző projectek különböző ismereteket igényelnek. Én sem mondom azt, hogy hú hát én nagyon jó programozó vagyok, a főnököm istenít és mindig minden időre kész és nagyon gyorsan fut, az ügyfél is elégedett és még IE alatt is jól jelenik meg - pedig egyetlen kőművest sem használtunk fel a project során - ergo tök felesleges a kőműves képzés, és szar az oktatás mert ilyenekre pazaroljuk a pénzt.
Bírom, hogy fél év "lógás" után meg merted állapítani, hogy az adott főiskolai képzés hová is tart és mit lehet/nem lehet profitálni belőle. Majd miután rájöttél az egyetemes nagy igazságra - otthagytad. Pusztán mondjuk egy két idióta tanár miatt.
Annak idején én is így gondoltam, hogy tiszta idióta egy egy tanár, de később megváltozott a véleményem.
Mond valakinek az a név valamit, hogy Juhász Pici? :))) -
roliika #128 Több trükk van. Közelítéses számításokat végeznek csak (ilyenkor előfordulhat, hogy a figura átmegy a falon). Vagy kínosan ügylenek arra a DirectX programozók, hogy kizárólag a modell azon részét számolja a gép amit látsz(hátsó részek nincsenek kiszámolva nincs rajtuk textura). Mindenféle mapping ami vasból jön...ezért követelik meg sokszor a drága kártyákat. Újabban figyelnek arra is, hogy amit nem veszel észre a játék "sebessége" miatt azokat a texturákat elnagyolják. Ha távol állsz egy gömbtől akkor a gömb poligonszámát lecsökkentik mert úgysem látod minek terhelje a gépet. A memóriafoglalás sem mindegy. Lehet dinamikusan vagy statikusan memóriát foglalni.
Statikus: Megmondják, hogy X MB kell és pont. Ilyenkor a program lassabban töltődik be sok esetben, viszont a futás közben nagyon gyors, mert az oprendszer sem vehet el belőle területet a program futása alatt.
Dinamikus: Gyors betöltődés, lassú futás, mert bármelyik oprendszeren futó program "elfogyaszthatja" a memóriát.
Ezt a játékoknál kombinálva használják, ezektől (hogy épp mit hogy foglalnak le és mikor) nagyban függ a futási sebesség.
Vagy épp amit a játék sokat használ...bitmapot, vagy bármit, berakják egy statikus memóriába, én onnan hivogatják, hogy a gép többször ne számolja ki fölöslegesen.
Ui.: Ezeket nem fősulin tanultam plán nem a GDF-en. -
#127 Fú, ez nekem magas... :) -
roliika #126 Ilyen a GDF-en nincs. Megkérdeztem, olyat lehet-e, hogy ami jövőre lesz tárgy...tehát előttünk lévő évfolyamnak már van, abból szabad-e vizsgáznom, akár plusz pénzért. Mondták erre nincs lehetőség. Namost én viszont nem fogok tökölni még közel 2 évet egy ilyen nyomoronc alap diplomáért. És pláne nem fogok a zsebükbe dugni 1 milliót még. -
barr #125 check this!
Nagyvonalakban ez az a megközelítés amivel az algoritmizálási problémákat hatékonyság szempontjából le lehet írni. Ezzel az elemzéssel és jelöléssel a feladat számítási idejének a karakterisztikáját figyeled, ami tetszőleges számú és legkevésbé kedvező bemenet esetén előfordulhat, ami ad egy mindenkori felső limitet a futási időre(vagy pl. memóriaigényt is lehet hasonló módon elemezni...). Emellett megállapítható egy mindenkori legoptimálisabb futási idő is, így a probléma (bemenet, azok rendezettsége, memóriaigény...) jellegétől függően válaszhatsz egy számodra megfelelő eljárást. Így amikor van egy bonyolultabb algoritmusod a fenti megközelítés ad egy tulajdonképpeni profilt a problémára.Pl::
Type of Sort Best Worst Average
...
QuickSort O(N log N) O(N2) O(N log N)
HeapSort O(N log N) O(N log N) O(N log N)
A fentiek közül a HeapSort jellemzően lassabb mint a QuickS, de az előfordulható legkedvezőtlenebb bemenetre sokkal jobb eredményt ad.
Nézz meg pl. gráf-bejáró algoritmusokat ha érdekel az hogy milyen különbségek lehetnek az egyes megoldások közt, futási idő szempontjából...
Jah igen, és gyakran már a használt adatszerkezet szintjén eldől az hogy mmennyire optimális a programod. Pl piros-fekete fák használatával garantálhatod hogy a keresés iszonyatos gyors lesz, viszont a fa előállítás utáni módosítása elég költséges...
És végül Donald Knuth örökzöldje::"...premature optimization is the root of all evil"
-
bakagaijin #124 Igen, alacsonyabb szinten algoritmus döntések is van benne bőven. Viszont minél magasabb szinten kapod el a problémát, annál többet lehet vele nyerni. Minél később teszed, annál költségesebb és annál nagyobb kínszenvedés és vért izzadás nyerni valamit rajta.