Párhuzamos algoritmusok
|
|
- Krisztina Pintér
- 5 évvel ezelőtt
- Látták:
Átírás
1 Párhuzamos algortmusok. Hatékonyság mértékek A árhuzamos algortmusok esetében fontos jellemző az m ( n, P, ) munka, amt a futás dő és a rocesszorszám szorzatával defnálunk. A P árhuzamos algortmus az A soros algortmusra nézve munkahatékony, ha W ( n, P, ) k = O(lg n), ahol n a bemenet mérete, a rocesszorszám, W edg a futás dő a W ( n, A) legrosszabb esetben. A P árhuzamos algortmus az A soros algortmusra nézve munkaotmáls, ha W ( n, P, ) = O(). W ( n, A). Algortmusok a PRAM modellen A árhuzamos számítás modellek alaja a soros számításokhoz széles körben használt RAM általánosítása, a PRAM (Parallel Random Access Machne = árhuzamos közvetlen hozzáférésű gé). A PRAM modell tartalmaz sznkronzáltan dolgozó rocesszort ( P, P,..., P ) és az M [ ], M[],..., M[ m] rekeszekből álló közös memórát. A modell szernt mnden rocesszor rendelkezk saját memórával: a P rocesszor esetében ez az M [,], M[,],..., M[, m] rekeszekből áll. Feltesszük, hogy a rekeszek tetszőleges egész szám tárolására alkalmasak. Tíusok írás/olvasás alaján: EREW (Exclusve Read Exclusve Wrte: kzárólagos olvasás kzárólagos írás) ERCW (Exclusve Read Concurrent Wrte) CREW (Concurrent Read Exclusve Wrte) CRCW (Concurrent Read Concurrent Wrte) Ugyanabba a memórarekeszbe egydejűleg csak írás vagy olvasás van megengedve... Prefxszámítás Legyen egy alahalmaz, melyen defnáltuk a bnárs asszocatív oerátort. Feltesszük, hogy a művelet egy lééssel elvégezhető, és a halmaz zárt erre a műveletre nézve. Legyenek az X =< x, x,..., x > sorozat eleme a alahalmaz eleme. Ekkor a refxszámítás bemenő adata az X sorozat eleme, a refxszámítás feladat edg az x, x x,..., x x... x elemek meghatározása. Ezeket a meghatározandó elemeket refxeknek hívjuk. A refxszámítás sorosan megoldható Θ ( ) lééssel.
2 Először egy rocesszoros algortmust mutatunk be, melynek léésszáma Θ (lg ). CREW-PREFIX(, X) Számítás modell: CREW PRAM Bemenet: (a bemenő sorozat hossza) és X : ] = x, x,..., x ( hosszúságú sorozat) [ Kmenet: Y : ] = y, y,..., y ( hosszúságú sorozat, melynek eleme a refxek) 0 f = [ 0 then y x 03 return Y 04 f > 05 then Az első / rocesszor rekurzívan számítsa az x, x,..., x / -höz tartozó refxeket legyenek ezek y, y,..., y / (ezek adják a végeredmény első felét). Ugyanakkor a több rocesszor rekurzívan számítsa k az x / +, x / +,..., x -hez tartozó refxeket legyenek ezek y y,..., y / +, / A rocesszorok másk fele árhuzamosan olvassa k a globáls memórából y / -t, és az y / y / +, y / y / +,..., y / y refxeket számítva állítsa elő a végeredmény másk felét. 07 return Y A CREW-PREFIX algortmus munkahatékony, de nem munkaotmáls. A következő algortmus futás deje szntén Θ (lg ), de csak / lg rocesszort használ, így munkaotmáls. OPTIMÁLIS-PREFIX(, X) Számítás modell: CREW PRAM Bemenet: (a bemenő sorozat hossza) és X : ] = x, x,..., x ( hosszúságú sorozat) [ Kmenet: Y : ] = y, y,..., y ( hosszúságú sorozat, melynek eleme a refxek) [ 0 P rocesszor ( =,,..., / lg ) sorosan számolja a hozzárendelt lg darab x( ) lg +, x( ) lg +,..., x lg elem refxet. 0 Összesen rocesszor együtt alkalmazza a CREW-PREFIX algortmust a elem, lg lg z lg, z lg, z3lg,..., z refxenek számítására. Legyen az eredmény w lg, w lg, w3lg,..., w. 03 Mnden rocesszor aktualzálja az első léésben kszámolt értéket: a P rocesszor ( =,3,..., / lg ) számolja k a w( ) lg z( ) lg +, w( ) lg z( ) lg +,..., w( ) lg z lg refxeket, majd az első rocesszor változtatás nélkül adja k a z, z,..., zlg refxeket. 04 return Y
3 .. Tömb elemenek rangsorolása A tömbrangsorolás feladat bemenő adata egy elemű tömbben ábrázolt lsta: mnden elem tartalmazza jobb oldal szomszédjának ndexét (és esetleges tovább adatokat). A feladat az elemek rangjának (jobb oldal szomszédja számának) meghatározása. A tömbrangsorolás sorosan elvégezhető lneárs léésszámmal. Először meghatározzuk a tömb fejét az egyetlen olyan értéket ( ), melyre A[ j] teljesül mnden j n értékre. A fejből kndulva ásztázzuk a tömböt, és az elemekhez rendre hozzárendeljük a,...,,0 rangokat. A következő árhuzamos algortmus egy rocesszoros EREW PRAM modellen Θ (lg ) futás dőt gényel, ezért nem munkaotmáls, vszont munkahatékony. DET-RANGSOROL( szomsz [ : ], rang[: ] ) Számítás modell: EREW PRAM Bemenet: szomsz [ : ] (az elemek jobb oldal szomszédjanak ndexe) Kmenet: rang [ : ] (az elemek rangja) 3
4 0 P n arallel for to 0 do f szomsz [ ] = 0 03 then rang [ ] 0 04 else rang [ ] 05 for j to lg 06 do P n arallel for to 07 do f szomsz [ ] 0 08 then rang [ ] rang[ ] + rang[ szomsz[ ]] 09 szomsz[ ] szomsz[ szomsz[ ]] A következő véletlenített algortmus nagy valószínűséggel munkaotmáls, mert rocesszorral O (lg ) dő alatt megoldja a feladatot. KIEMEL() Számítás modell: EREW PRAM Bemenet: (a rangsorolandó elemek száma) és A [ : ] (az elemeket tartalmazó tömb) Kmenet: rang [ : ] (az elemek rangja) 0 Láncoljuk a lstát kettősen. Legyen az A [] csúcs bal oldal szomszédja bal _ szomsz[ ], jobb oldal szomszédja jobb _ szomsz[ ]. A csúcsok rang mezőt kezdetben így adjuk meg: [ ] [] [] [] [] [] [0]. 0 whle a megmaradó csúcsok száma legalább 3 03 do P n arallel for to / lg / lg 4
5 Vzsgálja meg a következő hozzá tartozó kemeletlen csúcsot (legyen ez x). Ezután dobjon fel egy kétoldalú érmét. Ha az eredmény írás, akkor P maradjon tétlen a menet hátralevő részében. A következő menetben róbálja meg smét kemeln x-et. Másrészt, ha a dobás eredmény fej, akkor P megvzsgálja, vajon az elem jobb oldal szomszédját éen vzsgálja-e a megfelelő rocesszor. Ha a megfelelő rocesszor éen vzsgálja, és dobásának eredménye ugyancsak fej, akkor P feladja, és a menet hátralévő részében tétlen marad. Ha nem, akkor P kemel x-et. Amkor egy x csúcsot kemelünk, tároljuk a menetszámot, valamnt a bal _ szomsz[ x] mutatót és rang[ bal _ szomsz[ x]] -et. Az utóbb ebben a llanatban a bal _ szomsz[ x] és x között csúcsok számát tartalmazza. P végül beállítja a jobb _ szomsz[ bal _ szomsz[ x]] jobb _ szomsz[ x] és bal _ szomsz[ jobb _ szomsz[ x]] bal _ szomsz[ x] értékeket..3. Összefésülés Adott két csökkenőleg (vagy növekvőleg) rendezett sorozat, melyek együtt elemet tartalmaznak. A feladat ennek a sorozatnak egy csökkenő (vagy növekvő) sorozattá való rendezése. Ez a feladat egy soros rocesszoron Θ ( ) lééssel megoldható. 5
6 Legyen X =< k, k,..., km > és X =< km+, k m+,..., km > a két bemenő sorozat. Az egyszerűség kedvéért legyen m -hatvány, és a kulcsok különbözzenek. Az összefésüléshez elég az összes kulcs rangjának kszámítása. Ha a rangokat smerjük, akkor = m rocesszoron egy léésben beírhatjuk az rangú kulcsot az -edk memórarekeszbe. Az így kaott LOG-ÖSSZEFÉSÜL algortmus két m hosszúságú kulcssorozatot Θ (lg m) dő alatt fésül össze m CREW PRAM rocesszoron. Ez az algortmus nem munkaotmáls, de munkahatékony. A következő algortmus a klasszkus oszd meg és uralkodj elvet alkalmazza. PÁROS-PÁRATLAN-ÖSSZEFÉSÜL( X, X ) Számítás modell: EREW PRAM Bemenet: X és X (két rendezett sorozat) Kmenet: Y (az összefésült sorozat) 0 f m = then fésüljük össze a sorozatokat egyetlen összehasonlítással 0 return Y tn 03 Bontsuk fel X -et és X -t áros és áratlan részre, azaz legyen X = k, k3,..., k m és rs X k, = k 4,..., km. 04 Hasonlókéen bontsuk fel X -t s tn X és tn 05 Rekurzívan fésüljük össze X -t és L = l, l,..., l m. Ugyanakkor fésüljük össze eredmény legyen L = lm+, lm+,..., lm. tn X rs X részekre. -t m rocesszoron. Legyen az eredmény rs X -t és rs X -t másk m rocesszoron: az 06 Keverjük össze az L, L sorozatokat, azaz legyen L= l, lm+, l, lm+,..., lm, lm. 07 Hasonlítsuk össze az ( l m+, l+ ) ( =,,..., m ) árokat, és szükség esetén cseréljük fel őket. Az eredmény lesz a kmenő sorozat. 08 return Y A PÁROS-PÁRATLAN-ÖSSZEFÉSÜL algortmus két m hosszúságú kulcssorozatot m EREW PRAM rocesszoron Θ (lg m) dő alatt fésül össze, így munkahatékony, de nem munkaotmáls. Most m / lg m rocesszoron O (lg m) lééssel végezzük az összefésülést. Ez az OPTIMÁLISAN-ÖSSZEFÉSÜL algortmus az eredet roblémát Θ ( m / lg m) részre osztja úgy, hogy mndegykben O (lg m) hosszúságú rendezett sorozatokat kell összefésüln. Ezek a részroblémák soros algortmussal O (lg m) lééssel megoldhatók. Legyen X =< k, k,..., km > és X =< km+, k m+,..., km > a két bemenő sorozat. Osszuk X - m et részre: ekkor mndegykben legfeljebb lg m kulcs lesz. A részek legyenek lg m m A, A,..., A M, ahol M =. Az A -bel legnagyobb kulcs legyen l ( =,,..., M ). lg m 6
7 Rendeljünk egy-egy rocesszort ezekhez az l elemekhez. Ezek a rocesszorok bnárs kválasztással meghatározzák l X -bel (rendezés szernt) helyét. Ezek a helyek felbontják X -t M részre (ezek között üres részek s lehetnek). Jelöljük ezeket a részeket B, B,..., BM - mel. B -t az A -nek X -ben megfelelő részhalmaznak nevezzük. Ekkor X és X összefésülését megkahatjuk úgy, hogy rendre összefésüljük A -et B -gyel, A -t B vel, és így tovább, majd ezeket a sorozatokat egyesítjük. 7
8 Ha az előző algortmust kegészítjük az oszd meg és uralkodj elvvel, még gyorsabb Θ (lg lg m) dejű algortmust kaunk. Legyen m = b. GYORSAN-ÖSSZEFÉSÜL( X, X ) Számítás modell: CREW PRAM Bemenet: X és X Kmenet: Y 0 Bontsuk fel X -et b részre: ekkor mnden részben b elem lesz. Legyen A -ben a legnagyobb kulcs l ( =,,..., b). Mnden l -hez rendeljünk b rocesszort. Ezek a rocesszorok b-árs keresést végeznek X -ben, hogy megtalálják l X -bel helyét. Ezzel X b részre való felbontását kajuk: legyenek ezek a részek B, B,..., Bb. A B részhalmaz az A -nek X -ben megfelelő részhalmaz. 0 Most X és X összefésüléséhez elegendő A és B ( =,,..., b) összefésülése. Az A -k mérete adott, vszont a B -k nagyon nagyok (és nagyon kcsk) s lehetnek. Ezért újra felbontunk. 03 return Y.4. Kválasztás Adott n kulcs és egy ( n) egész szám. A feladat az -edk legksebb kulcs kválasztása. Legyen = n, azaz a legnagyobb kulcsot keressük. Ez a feladat a következő NÉGYZETES- KIVÁLASZT algortmussal n CRCW rocesszoron O () lééssel elvégezhető. NÉGYZETES-KIVÁLASZT( K, y ) Számítás modell: CRCW PRAM Bemenet: K =< k, k,..., kn > (n különböző kulcs) Kmenet: y (a maxmáls kulcs értéke) 0 f n = 0 then y k 03 return y P, n arallel for to n, j to n 04 j számítsa k az x, = k < k értéket j j 05 Az n rocesszort n csoortba ( G,..., Gn ) osztjuk úgy, hogy a G csoortba a rocesszorok kerüljenek. Mndegyk csoort logka VAGY műveletet végez az logka változókkal. P,,..., P, n x,,..., x, n 06 Ha a G csoort számítás eredménye az 5. léésben hams, akkor a csoort P, rocesszora megadja y= k ) -t kmenetként. ( 8
9 07 return y Ez az algortmus Θ ( n ) munkát végez, ezért nem munkahatékony, hszen a legjobb soros algortmus lneárs. Most megmutatjuk, hogy a maxmáls elem közös CRCW rocesszoron O (lg lg ) lééssel meghatározható. A technka az oszd meg és uralkodj. Az egyszerűség kedvéért feltesszük, hogy négyzetszám. Legyenek a bemenő adatok X =< k, k,..., k >. Legyen az algortmusunk léésszáma T ( ). A bemenő adatokat = a csoortra osztjuk úgy, hogy mnden csoortban a elem legyen. Mnden csoorthoz rendeljünk a rocesszort ekkor a csoortok maxmáls eleme árhuzamosan számítható. Mvel csoortonként a elem és ugyananny rocesszor van, ezért a csoort maxmáls eleme T (a) lééssel meghatározható. Legyenek M, M,..., M a a csoortok maxmáls eleme. Ezek maxmuma lesz az algortmus kmenete. Mvel most csak a elemünk van, az összes rocesszort alkalmazhatjuk. Tegyük fel, hogy az X =< k, k,..., k n > sorozat különböző kulcsokat tartalmaz, és az -edk legksebb kulcsot akarjuk kválasztan. Legyen most az x kulcs rangja eggyel nagyobb, mnt n a nála ksebb kulcsok száma. Ezt a rangot CREW PRAM rocesszoron bármely kulcsra lg n O (lg n) léésben meg tudjuk határozn. Ha n lg n rocesszorunk van, akkor azokat n C, C,..., C n csoortokba oszthatjuk úgy, hogy mnden csoortban rocesszor legyen. A lg n C j ( j n) csoort O (lg n) léésben meghatározza a k j kulcs rangját X-ben. Annak a csoortnak az egyk rocesszora, amelyk az rangot határozta meg, adja a kmenetet. Az így kaott algortmus léésszáma Θ (lg n), munkája Θ ( n ), ezért nem munkaotmáls. Véletlenítéssel kahatunk munkaotmáls algortmust..5. Rendezés Adott n kulcs. A feladat ezek csökkenő vagy növekvő sorrendbe rendezése. Ismert, hogy ha a megengedett művelet a szokásos összehasonlítás, akkor mnden A soros algortmusnak Ω ( nlg n) léésre van szüksége, másrészt vannak O ( nlg n) léésszámú összehasonlítás alaú algortmusok, amelyek tehát aszmtotkusan otmálsak. n rocesszoron a kulcsok rangja (lg n) O lééssel meghatározható. Ha a rangokat smerjük, akkor a rendezés egy árhuzamos írással megoldható. Ez a módszer Θ ( n lg n) munkát gényel, azaz nem munkahatékony. A következő algortmus a klasszkus oszd meg és uralkodj elvet alkalmazza. Az egyszerűség kedvéért n legyen -hatvány, és a kulcsok legyenek különbözők. PÁROS-PÁRATLAN-RENDEZ(X) Számítás modell: EREW PRAM Bemenet: X (a rendezendő kulcsok) Kmenet: Y (a rendezett kulcsok) 9
10 0 f n = 0 then Y X 03 return Y 04 f n > 05 then Osszuk az X bemenetet két részre: ezek legyenek X ' =< k, k,..., k n / > és X =< k, k +,..., k > ' n / + n / n. n 06 Rendezze rocesszor rekurzívan X ' -t. Az eredmény legyen X. Ugyanakkor rendezze n rocesszor rekurzívan X ' -t. Az eredmény legyen X. 07 Fésüljük össze X -et és X -t m rocesszoron a PÁROS-PÁRATLAN-ÖSSZEFÉSÜL algortmussal. 08 return Y Ez az algortmus n rocesszoron Θ (lg n) lééssel rendez, így munkahatékony, de nem munkaotmáls. Több rocesszorral a léésszám csökkenthető: Prearata algortmusa n lg n CREW PRAM rocesszoron Θ (lg n) árhuzamos léést végez. A kulcssorozatot lg n részre osztjuk, majd a részeket áronként összefésülve mnden kulcsnak mnden részre nézve meghatározzuk a rangját. A kulcsok tényleges rangja az előbb rangok összege lesz. Reschuk véletlenített algortmusa n rocesszoron O (lg n) árhuzamos léést tesz, azaz nagy valószínűséggel munkahatékony. Alaja Prearata algortmusa. 3. Algortmusok rácsokon A k dmenzós ( k ) rács egy olyan m m... mk méretű ( m, m,..., m k ) háló, melynek mnden egyes metszésontjában van egy rocesszor. Az élek a kommunkácós vonalak, melyek kétrányúak. Mnden rocesszor egy RAM, amely rendelkezk saját (hely) memórával. A rocesszorok működése sznkron módon történk, azaz mnden rocesszor egy globáls óra ütemére egyszerre hajtja végre az aktuáls feladatát. A legegyszerűbb rács a k = értékhez tartozó lánc. Egy lánc rocesszora P, P,..., P. Ezek a következőkéen vannak összekötve: P és P kvételével mndegyk rocesszor össze van kötve a nála eggyel nagyobb (jobb szomszéd), lletve eggyel ksebb (bal szomszéd) ndexűvel, míg a két szélső rocesszornak csak egy szomszédja van: P, lletve P. Az összeköttetés kétrányú. Ha k =, akkor téglala alakú rácsot kaunk. Ha most m = m = = a, akkor a a méretű négyzetet kaunk. 0
11 3.. Csomagrányítás A rocesszorok között kommunkácó egyetlen léése egy rögzített szerkezetű hálózatban a következő, csomagrányítás roblémának nevezett feladatként fogható fel. A hálózatban mnden rocesszornak van egy adatcsomagja, amt egy másk rocesszornak akar elkülden. A feladat a csomagok eljuttatása a céljukhoz a lehető leggyorsabban úgy, hogy egy léésben egy kommunkácós csatornán egy rányban egyszerre csak egy csomag utazhat. Könnyen előfordulhat, hogy egy adott léésben kettő vagy több csomag érkezk egy rocesszorhoz, és mndegyk ugyanazon a csatornán szeretne továbbhaladn. Ilyen esetben természetesen csak egy csomag utazhat a következő léésben, a többek edg a rocesszornál egy várakozás sorba kerülnek. Egy elsőbbség szabály alaján döntjük el, hogy melyk csomagot küldjük tovább először. Ilyen elsőbbség szabály éldául az FDF (Farthest Destnaton Frst), FOF (Farthest Orgn Frst), FIFO, RAN (véletlenszerűen választunk). Egy láncon, mvel az összekötöttség kétrányú, a rocesszor egyszerre küldhet és fogadhat a szomszédjatól üzeneteket. Ennek következtében két ellentétes rányú csomaglánc nem zavarja egymást. Tegyük fel, hogy egy rocesszorból álló láncban mnden rocesszor legfeljebb egy üzenetet küld, az üzenetek célja tetszőleges lehet. Ezt a feladatot egy kezdőcsomagos feladatnak nevezzük. Az egy kezdőcsomagos feladat egy rocesszoros láncon megoldható legfeljebb léésben. Ugyans mnden üzenetet küldhetünk a kezdő- és végont között legrövdebb úton. Ha egy üzenet a P rocesszortól ndul, és P j felé tart, akkor j léésben ér azt el, hszen sosem kell várakozna egy másk üzenet matt. A leghosszabb lyen út -től -g vezet, ezért felső korlát a léésszámra. Adott egy rocesszorból álló lánc. A P rocesszor k ( 0 k ) üzenetet akar külden, és k =. Nncs két olyan üzenet, amelyeket azonos rocesszorhoz kell külden. Ezt a = feladatot egy célcsomagos feladatnak nevezzük. Ha az FDF elsőbbség szabályt használjuk (vagys mndg a legtávolabbra tartó csomagot küldjük először), akkor az egy célcsomagos feladat egy rocesszoros láncon megoldható legfeljebb léés alatt. Most defnáljuk az általános csomagrányítás feladatot. Tételezzük fel, hogy egy rocesszoros láncon több csomag származhat egy rocesszortól, és több csomagot küldhetünk egy rocesszorhoz. Továbbá a P P,..., P ( j =,,..., rocesszoroktól összesen nduló, j ) csomagot száma nem több, mnt j+ f ( ), valamely rögzített f ( ) függvényére. Ha a FOF elsőbbség szabályt használjuk (vagys mndg a legmesszebbről jött csomagot küldjük először), akkor az általános csomagrányítás robléma megoldható + f ( ) léésben. 3.. Üzenetszórás Az üzenetszórás feladat szernt a hálózat megadott rocesszorától üzenetet kell eljuttatn megadott célrocesszorokhoz (rendszernt az összes több rocesszorhoz). Tekntsünk egy rocesszoros láncot, és legyen M egy üzenet, amelyet a P rocesszornak kell elküldene a több rocesszorhoz. A feladat megoldható olyan egyszerűen, hogy P elküld az üzenetet P -nek, az továbbküld P3 -nak, és így tovább. Ekkor az üzenet léésben eljut a legtávolabb rocesszorhoz, P -hez. Mvel a lánc átmérője, ezért ez a lehető legksebb léésszám.
12 Egy a a méretű négyzetrácsban az üzenetküldést két fázsban valósíthatjuk meg. Az első fázsban az üzenetet küldő P, rocesszor eljuttatja üzenetét az -edk sor mnden j rocesszorához. Ezután a másodk fázsban az -edk sor mnden rocesszora eljuttatja az üzenetet a vele azonos oszloban lévő rocesszorokhoz. Ez összesen legfeljebb ( a ) léést vesz génybe Prefxszámítás Tegyük fel, hogy az L lánc P ( =,,..., ) rocesszorának saját memórájában van az x elem, és a számítás végén a P rocesszor memórájában az y refx lesz. LÁNC-PREFIX( L, X, Y ) Számítás modell: lánc Bemenet: X =< x, x,..., x > (az összeadandó elemek) Kmenet: Y =< y, y,..., y > (a refxek) 0 P n arallel for to 0 f = 03 f = then P az első léésben elküld x -et P -nek then tárolja 04 f then tárolja P a -edk léésben ka egy elemet ( z x -t P az -edk léésben ka egy elemet ( z z -et) P -től, kszámítja és z -et) P -től, kszámítja és = z x -t, majd z -t elküld P+ -nek A LÁNC-PREFIX algortmus egy láncon Θ ( ) dő alatt határozza meg elem refxet. Mvel soros rocesszorral elem refxe O ( ) léésben meghatározhatók, és LÁNC- PREFIX munkát végez, ezért az algortmus nem munkahatékony. Hasonló algortmus alkalmazható négyzeten s. Tekntsünk egy sorfolytonos ndexeléssel. NÉGYZETEN-PREFIX( Számítás modell: négyzet X, Y ) Bemenet: X =< x, x,..., x > (az összeadandó elemek) Kmenet: Y =< y, y,..., y > (a refxek) P n arallel for to a 0, 0 do LÁNC-PREFIX( S, X[ ], Y[ ] ) 03 LÁNC-PREFIX( O, Z[ ] ) a a méretű négyzetet
13 04 j a P, n arallel for j to a P, 05 do küldje el a kszámolt refxet j + a -nak 06 S n arallel for j to a 07 do ÜZENET-SZÓR() P, n arallel for to a, j to a 08 j 09 do számítsa k és tárolja a y j -t z, +, 0 számítsa k és tárolja z x -t A NÉGYZETEN-PREFIX algortmus a a méretű négyzeten sorfolytonos ndexeléssel 3a + = O( a) léésben elvégz a refxszámítást Adatkoncentrácó Tegyük fel, hogy egy rocesszoros hálózatban d ( d < ) adat van rocesszoronként legfeljebb egy. Adatkoncentrácó az a feladat, hogy az adatokat egyesével helyezzük el az első d rocesszornál. Lánc esetében az adatokat a P, P,..., Pd rocesszorokhoz kell mozgatn. Rács esetében tetszés szernt ndexelés alkalmazható. Az adatkoncentrácó rocesszoros láncon legfeljebb léésben, / 6a+ O a léésben megoldható. ( ) a a méretű négyzeten 3
14 3.5. Kválasztás Tekntsünk egy a a méretű négyzetet, és tegyük fel, hogy a kulcsok n és a rocesszorok száma megegyezk! Ekkor a árhuzamos gére javasolt véletlen algortmus módosítható úgy, hogy négyzeten s munkaotmáls legyen. Az így kaott algortmus O (a) léésben megoldja a kválasztás feladatot a négyzeten. Tegyük fel most, hogy kevesebb rocesszorunk van, mnt kulcsunk ( < n)! Ekkor egy determnsztkus algortmus adható, mely az elemeket l. 5-ös csoortokra bontja, mnden csoortnak meghatározza a medánját, majd kszámítja ezen medánok M medánját. Ezután meghatározza M rangját ( r M ), majd az rm összehasonlítás eredményétől függően elhagyja az M-nél nagyobb, lletve nem nagyobb elemeket. Végül a megmaradó kulcsok közül rekurzívan kválasztja a megfelelőt. Amkor ezt az algortmust hálózatban hajtjuk végre, célszerű arra törekedn, hogy a kulcsok egyenletesen legyenek a rocesszorok között elosztva. Ennek érdekében a medánok M medánját súlyozással számoljuk: mnden csoortot az elemszámának megfelelő súllyal veszünk fgyelembe. A fent algortmus n kulcs közül megoldja a kválasztást. a a méretű négyzeten O n lg lg + a lg n léésben 4
15 3.6. Összefésülés Két m hosszúságú sorozat egy m rocesszoros láncon O (m) léésben összefésülhető. A fent ábra mutatja, hogyan fésül össze a áratlan-áros algortmus a ( 3,5,6,8 ) és (,4,,7 ) sorozatokat egy 8 rocesszoros láncon. Az ábra (a) része a bemenő adatokat tartalmazza. A (b) rész a bemenő sorozatok áros és áratlan ndexű elemeket tartalmazó részsorozatokra való felbontását mutatja. A (c) rész a P és Q sorozatok felcserélésével kaott állaotot tükröz. A (d) ábrarész a P és P, valamnt a Q és Q sorozatok (rekurzív) összefésülésével kaott sorozatokat tartalmazza. A következő két ábrarész az összekeveréssel kaott sorozatot, lletve a cserélő összehasonlítással kaott végeredményt ábrázolja. Legyen most négyzet a számítás modell. Feltesszük, hogy a -hatvány, és a bemenő adatok két részre osztva, kígyószerűen helyezkednek el az,,..., a a a, lletve az +, +,..., a oszlondexű rocesszorok hely memórájában. Mndkét rész a oszloból és a sorból álló adatkígyó. Ennek a két rendezett sorozatnak az összefésülésére alkalmas a következő algortmus: NÉGYZETEN-PP-FÉSÜL() Számítás modell: négyzet a Bemenet: (rocesszorszám, áratlan hatványa), X és X (mndkettő hosszúságú rendezett sorozat) Kmenet: Y ( hosszúságú rendezett sorozat) 0 f l = 0 then fésüljük össze a két kígyót 0 else cseréljük fel P -t és Q -et 03 rekurzívan fésüljük össze P -et és P -t A NÉGYZETEN-PP-FÉSÜL algortmus O (a) léésben befejeződk. 5
16 3.7. Rendezés A LÁNCON-PP-RENDEZ algortmus alaötlete ugyanaz, mnt a soros buborékrendezésé: a szomszédos kulcsokat összehasonlítjuk, és szükség esetén felcseréljük. LÁNCON-PP-RENDEZ() Számítás modell: lánc Bemenet: X (rendezendő kulcsok) Kmenet: Y ( hosszúságú rendezett sorozat) 0 P n arallel for to 0 do f áratlan then hasonlítson össze és cseréljen 03 else hasonlítson össze és cseréljen Ez az algortmus O ( ) léést tesz. Négyzetre két rendező algortmust adunk meg. A SCHEARSON-RENDEZ Θ ( a lg a) léést tesz, a másk vszont O (a) léésszámának köszönhetően munkahatékony. 6
17 SCHEARSON-RENDEZ() Számítás modell: négyzet Bemenet: X (rendezendő kulcsok) Kmenet: Y ( hosszúságú rendezett sorozat) 0 for to n 0 do f áros 03 then rendezzük az oszlookat 04 rendezzük az első sort növekvőleg 7
18 Az előző ábra (a) része egy 4 4 méretű négyzeten elrendezett kulcsokat ábrázol. Az első fázsban a sorokat rendezzük az egymást követő sorokat ellenkező módon (az első sort növekvőleg, a másodkat csökkenőleg, és így tovább). Az első fázs eredményét mutatja az ábra (b) része. Az ábra következő része rendre a másodk,, ötödk fázs után helyzetet mutatják. Az ötödk fázs végén a négyzet rendezve van. Most a áratlan-áros rendezés algortmust négyzeten valósítjuk meg. Ezzel az algortmussal elem O léésben rendezhető. méretű négyzeten ( ) 8
3.1. ábra. 6 processzoros lánc. 3. Rácsok. Ebben a fejezetben rácsokat (láncot, négyzetet és kockát) alkalmazunk számítási modellként.
P 1 P 2 P 3 P 4 P 5 P 6 3.1. ábra. 6 processzoros lánc. 3. Rácsok Ebben a fejezetben rácsokat (láncot, négyzetet és kockát) alkalmazunk számítási modellként. 3.1. Számítási modellek A k dimenziós (k 1)
RészletesebbenAlgoritmusok és adatszerkezetek gyakorlat 09 Rendezések
Algortmusok és adatszerkezetek gyakorlat 09 Rendezések Néhány órával ezelőtt megsmerkedtünk már a Merge Sort rendező algortmussal. A Merge Sort-ról tuduk, hogy a legrosszabb eset dőgénye O(n log n). Tetszőleges
RészletesebbenStatisztikai próbák. Ugyanazon problémára sokszor megvan mindkét eljárás.
Statsztka próbák Paraméteres. A populácó paraméteret becsüljük, ezekkel számolunk.. Az alapsokaság eloszlására van kkötés. Nem paraméteres Nncs lyen becslés Nncs kkötés Ugyanazon problémára sokszor megvan
RészletesebbenFüggvények növekedési korlátainak jellemzése
17 Függvények növekedési korlátainak jellemzése A jellemzés jól bevált eszközei az Ω, O, Θ, o és ω jelölések. Mivel az igények általában nemnegatívak, ezért az alábbi meghatározásokban mindenütt feltesszük,
Részletesebben8. Programozási tételek felsoroló típusokra
8. Programozás tételek felsoroló típusokra Ha egy adatot elem értékek csoportja reprezentál, akkor az adat feldolgozása ezen értékek feldolgozásából áll. Az lyen adat típusának lényeges jellemzője, hogy
RészletesebbenAdatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)
Adatszerkezetek Nevezetes algoritmusok (Keresések, rendezések) Keresések A probléma általános megfogalmazása: Adott egy N elemű sorozat, keressük meg azt az elemet (határozzuk meg a helyét a sorozatban),
RészletesebbenPéldák ekvivalencia relációra (TÉTELként kell tudni ezeket zárthelyin, vizsgán):
F NIK INÁRIS RLÁIÓK INÁRIS RLÁIÓK (és hasonló mátrxok s tt!) Defnícó: z R bnárs relácó, ha R {( a, b) a, b } nárs relácók lehetséges tuladonsága:. Reflexív ha ( x,.(a). Szmmetrkus ha ( x, y) ( y,.(b).
RészletesebbenMűszaki folyamatok közgazdasági elemzése. Kevert stratégiák és evolúciós játékok
Műszak folyamatok közgazdaság elemzése Kevert stratégák és evolúcós átékok Fogalmak: Példa: 1 szta stratéga Vegyes stratéga Ha m tszta stratéga létezk és a 1 m annak valószínűsége hogy az - edk átékos
RészletesebbenAlgoritmuselmélet 2. előadás
Algoritmuselmélet 2. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 12. ALGORITMUSELMÉLET 2. ELŐADÁS 1 Buborék-rendezés
RészletesebbenA félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
RészletesebbenA továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk
1. Kódelmélet Legyen X = {x 1,..., x n } egy véges, nemüres halmaz. X-et ábécének, elemeit betűknek hívjuk. Az X elemeiből képzett v = y 1... y m sorozatokat X feletti szavaknak nevezzük; egy szó hosszán
RészletesebbenFuzzy rendszerek. A fuzzy halmaz és a fuzzy logika
Fuzzy rendszerek A fuzzy halmaz és a fuzzy logka A hagyományos kétértékű logka, melyet évezredek óta alkalmazunk a tudományban, és amelyet George Boole (1815-1864) fogalmazott meg matematkalag, azon a
RészletesebbenProgramozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék
9. előadás Wagner György Általános Informatikai Tanszék Leszámoló rendezés Elve: a rendezett listában a j-ik kulcs pontosan j-1 kulcsnál lesz nagyobb. (Ezért ha egy kulcsról tudjuk, hogy 27 másiknál nagyobb,
RészletesebbenSpecifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
Részletesebbend(f(x), f(y)) q d(x, y), ahol 0 q < 1.
Fxponttétel Már a hétköznap életben s gyakran tapasztaltuk, hogy két pont között a távolságot nem feltétlenül a " kettő között egyenes szakasz hossza" adja Pl két település között a távolságot közlekedés
RészletesebbenAz entrópia statisztikus értelmezése
Az entrópa statsztkus értelmezése A tapasztalat azt mutatja hogy annak ellenére hogy egy gáz molekulá egyed mozgást végeznek vselkedésükben mégs szabályszerűségek vannak. Statsztka jellegű vselkedés szabályok
RészletesebbenEgy negyedrendű rekurzív sorozatcsaládról
Egy negyedrendű rekurzív sorozatcsaládról Pethő Attla Emlékül Kss Péternek, a rekurzív sorozatok fáradhatatlan kutatójának. 1. Bevezetés Legyenek a, b Z és {1, 1} olyanok, hogy a 2 4b 2) 0, b 2 és ha 1,
RészletesebbenSpecifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
RészletesebbenProgramozási módszertan. Függvények rekurzív megadása "Oszd meg és uralkodj" elv, helyettesítő módszer, rekurziós fa módszer, mester módszer
PM-03 p. 1/13 Programozási módszertan Függvények rekurzív megadása "Oszd meg és uralkodj" elv, helyettesítő módszer, rekurziós fa módszer, mester módszer Werner Ágnes Villamosmérnöki és Információs Rendszerek
RészletesebbenKvantum-tömörítés II.
LOGO Kvantum-tömörítés II. Gyöngyös László BME Vllamosmérnök és Informatka Kar A kvantumcsatorna kapactása Kommunkácó kvantumbtekkel Klasszkus btek előnye Könnyű kezelhetőség Stabl kommunkácó Dszkrét értékek
RészletesebbenIT jelű DC/DC kapcsolóüzemű tápegységcsalád
IT jelű DC/DC kapcsolóüzemű tápegységcsalád BALOGH DEZSŐ BHG BEVEZETÉS A BHG Híradástechnka Vállalat kutató és fejlesztő által kdolgozott napjankban gyártásban levő tárolt programvezérlésű elektronkus
RészletesebbenHely és elmozdulás - meghatározás távolságméréssel
Hely és elmozdulás - meghatározás távolságméréssel Bevezetés A repülő szerkezetek repülőgépek, rakéták, stb. helyének ( koordnátának ) meghatározása nem új feladat. Ezt a szakrodalom részletesen taglalja
Részletesebben15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30.
15. tétel Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. Edényrendezés Tegyük fel, hogy tudjuk, hogy a bemenő elemek (A[1..n] elemei) egy m elemű U halmazból kerülnek ki, pl. " A[i]-re
RészletesebbenGráfelméleti feladatok. c f
Gráfelméleti feladatok d e c f a b gráf, csúcsok, élek séta: a, b, c, d, e, c, a, b, f vonal: c, d, e, c, b, a út: f, b, a, e, d (walk, lanţ) (trail, lanţ simplu) (path, lanţ elementar) 1 irányított gráf,
RészletesebbenA multikritériumos elemzés célja, alkalmazási területe, adat-transzformációs eljárások, az osztályozási eljárások lényege
A multkrtérumos elemzés célja, alkalmazás területe, adat-transzformácós eljárások, az osztályozás eljárások lényege Cél: tervváltozatok, objektumok értékelése (helyzetértékelés), döntéshozatal segítése
RészletesebbenVázlat. Relációk. Példák direkt szorzatra
7..9. Vázlat elácók a. elácó fogalma b. Tulajdonsága: refleív szmmetrkus/antszmmetrkus tranztív c. Ekvvalenca relácók rzleges/parcáls rrendez relácók felsmere d. elácók reprezentálása elácó matematka fogalma
Részletesebben2. Milyen értéket határoz meg az alábbi algoritmus, ha A egy vektor?. (2 pont)
A Név: l 2017.04.06 Neptun kód: Gyakorlat vezet : HG BP l 1. Az A vektor tartalmát az alábbi KUPACOL eljárással rendezzük át maximum kupaccá. A={28, 87, 96, 65, 55, 32, 51, 69} Mi lesz az értéke az A vektor
RészletesebbenA számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
A számítástudomány alapjai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Bináris keresőfa, kupac Katona Gyula Y. (BME SZIT) A számítástudomány
RészletesebbenNagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.
Nagyságrendek Kiegészítő anyag az Algoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: Algoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 018. február 1. Az O, Ω, Θ jelölések Az algoritmusok
Részletesebben4 2 lapultsági együttható =
Leíró statsztka Egy kísérlet végeztével általában tetemes mennységű adat szokott összegyűln. Állandó probléma, hogy mt s kezdjünk - lletve mt tudunk kezden az adatokkal. A statsztka ebben segít mnket.
RészletesebbenSupport Vector Machines
Support Vector Machnes Ormánd Róbert MA-SZE Mest. Int. Kutatócsoport 2009. február 17. Előadás vázlata Rövd bevezetés a gép tanulásba Bevezetés az SVM tanuló módszerbe Alapötlet Nem szeparálható eset Kernel
RészletesebbenAdatsorok jellegadó értékei
Adatsorok jellegadó értéke Varga Ágnes egyetem tanársegéd varga.ag14@gmal.com Terület és térnformatka kvanttatív elemzés módszerek BCE Geo Intézet Terület elemzés forgatókönyve vacsora hasonlat Terület
RészletesebbenRelációk. Vázlat. Példák direkt szorzatra
8.. 7. elácók elácó matematka fogalma zükséges fogalom: drekt szorzat Halmazok Descartes drekt szorzata: Legenek D D D n adott doman halmazok. D D D n : = { d d d n d k D k k n } A drekt szorzat tehát
RészletesebbenSorozatok I. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma)
Sorozatok I. DEFINÍCIÓ: (Számsorozat) A számsorozat olyan függvény, amelynek értelmezési tartománya a pozitív egész számok halmaza, értékkészlete a valós számok egy részhalmaza. Jelölés: (a n ), {a n }.
Részletesebben19. AZ ÖSSZEHASONLÍTÁSOS RENDEZÉSEK MŰVELETIGÉNYÉNEK ALSÓ KORLÁTJAI
19. AZ ÖSSZEHASONLÍTÁSOS RENDEZÉSEK MŰVELETIGÉNYÉNEK ALSÓ KORLÁTJAI Ebben a fejezetben aszimptotikus (nagyságrendi) alsó korlátot adunk az összehasonlításokat használó rendező eljárások lépésszámára. Pontosabban,
RészletesebbenBevezetés a programozásba. 3. Előadás Algoritmusok, tételek
Bevezetés progrmozásb 3. Elődás Algortmusok, tételek ISMÉTLÉS Specfkácó Előfeltétel: mlyen körülmények között követelünk helyes működést Utófeltétel: mt várunk kmenettől, m z összefüggés kmenet és bemenet
RészletesebbenFelvételi tematika INFORMATIKA
Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.
RészletesebbenBékefi Zoltán. Közlekedési létesítmények élettartamra vonatkozó hatékonyság vizsgálati módszereinek fejlesztése. PhD Disszertáció
Közlekedés létesítmények élettartamra vonatkozó hatékonyság vzsgálat módszerenek fejlesztése PhD Dsszertácó Budapest, 2006 Alulírott kjelentem, hogy ezt a doktor értekezést magam készítettem, és abban
RészletesebbenRegresszió. Fő cél: jóslás Történhet:
Fő cél: jóslás Történhet: Regresszó 1 változó több változó segítségével Lépések: Létezk-e valamlyen kapcsolat a 2 változó között? Kapcsolat természetének leírása (mat. egy.) A regresszós egyenlet alapján
RészletesebbenDarupályák ellenőrző mérése
Darupályák ellenőrző mérése A darupályák építésére, szerelésére érvényes 15030-58 MSz szabvány tartalmazza azokat az előírásokat, melyeket a tervezés, építés, műszak átadás során be kell tartan. A geodéza
RészletesebbenAz elektromos kölcsönhatás
TÓTH.: lektrosztatka/ (kbővített óravázlat) z elektromos kölcsönhatás Rég tapasztalat, hogy megdörzsölt testek különös erőket tudnak kfejten. Így pl. megdörzsölt műanyagok (fésű), megdörzsölt üveg- vagy
RészletesebbenÖsszetett programozási tételek Rendezések Keresések PT egymásra építése. 10. előadás. Programozás-elmélet. Programozás-elmélet 10.
Összetett programozási tételek Sorozathoz sorozatot relő feladatokkal foglalkozunk. A bemenő sorozatot le kell másolni, s közben az elemekre vonatkozó átalakításokat lehet végezni rajta: Input : n N 0,
RészletesebbenTiszta és kevert stratégiák
sza és kever sraégák sza sraéga: Az -edk áékos az sraégá és ez alkalmazza. S sraégahalmazból egyérelműen válasz k egy eknsük a kövekező áéko. Ké vállala I és II azonos erméke állí elő. Azon gondolkodnak,
RészletesebbenAlgoritmusok és adatszerkezetek gyakorlat 07
Algoritmusok és adatszerkezetek gyakorlat 0 Keresőfák Fák Fa: összefüggő, körmentes gráf, melyre igaz, hogy: - (Általában) egy gyökér csúcsa van, melynek 0 vagy több részfája van - Pontosan egy út vezet
RészletesebbenAz optimális megoldást adó algoritmusok
Az optimális megoldást adó algoritmusok shop ütemezés esetén Ebben a fejezetben olyan modellekkel foglalkozunk, amelyekben a munkák több műveletből állnak. Speciálisan shop ütemezési problémákat vizsgálunk.
Részletesebben1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje
1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt
RészletesebbenProgramozási módszertan. Mohó algoritmusok
PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás
RészletesebbenVéletlenszám generátorok. 6. előadás
Véletlenszám generátorok 6. előadás Véletlenszerű változók, valószínűség véletlen, véletlen változók valószínűség fogalma egy adott esemény bekövetkezésének esélye értékét 0 és között adjuk meg az összes
RészletesebbenMűveletek mátrixokkal. Kalkulus. 2018/2019 ősz
2018/2019 ősz Elérhetőségek Előadó: (safaro@math.bme.hu) Fogadóóra: hétfő 9-10 (H épület 3. emelet 310-es ajtó) A pontos tárgykövetelmények a www.math.bme.hu/~safaro/kalkulus oldalon találhatóak. A mátrix
RészletesebbenKupacrendezés. Az s sorban lévő elemeket rendezzük a k kupac segítségével! k.empty. not s.isempty. e:=s.out k.insert(e) not k.
10. Előadás Beszúró rendezés Használjuk a kupacokat rendezésre! Szúrd be az elemeket egy kupacba! Amíg a sor ki nem ürül, vedd ki a kupacból a maximális elemet, és tedd az eredmény (rendezett) sorba! 2
RészletesebbenSzámelmélet Megoldások
Számelmélet Megoldások 1) Egy számtani sorozat második tagja 17, harmadik tagja 1. a) Mekkora az első 150 tag összege? (5 pont) Kiszámoltuk ebben a sorozatban az első 111 tag összegét: 5 863. b) Igaz-e,
RészletesebbenVariancia-analízis (ANOVA) Mekkora a tévedés esélye? A tévedés esélye Miért nem csinálunk kétmintás t-próbákat?
Varanca-analízs (NOV Mért nem csnálunk kétmntás t-próbákat? B Van különbség a csoportok között? Nncs, az eltérés csak véletlen! Ez a nullhpotézs. és B nncs különbség Legyen, B és C 3 csoport! B és C nncs
RészletesebbenMETROLÓGIA ÉS HIBASZÁMíTÁS
METROLÓGIA ÉS HIBASZÁMíTÁS Metrológa alapfogalmak A metrológa a mérések tudománya, a mérésekkel kapcsolatos smereteket fogja össze. Méréssel egy objektum valamlyen tulajdonságáról számszerű értéket kapunk.
RészletesebbenAlgoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás
Algoritmusok Tervezése 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Mi az algoritmus? Lépések sorozata egy feladat elvégzéséhez (legáltalánosabban) Informálisan algoritmusnak nevezünk bármilyen jól definiált
RészletesebbenAlgoritmuselmélet 1. előadás
Algoritmuselmélet 1. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 11. ALGORITMUSELMÉLET 1. ELŐADÁS 1 Források
RészletesebbenINFORMATIKA javítókulcs 2016
INFORMATIKA javítókulcs 2016 ELMÉLETI TÉTEL: Járd körbe a tömb fogalmát (Pascal vagy C/C++): definíció, egy-, két-, több-dimenziós tömbök, kezdőértékadás definíciókor, tömb típusú paraméterek átadása alprogramoknak.
RészletesebbenOAF Gregorics Tibor: Minta dokumentáció a 4. házi feladathoz 1. Feladat. Megoldás
OAF Gregorcs Tbor: Mnta dokumentácó a 4. ház feladathoz 1. Feladat Adott egy szöveges fájlbel szöveg, ahol a szavakat szóközök, tabulátor-jelek, sorvége-jelek lletve a fájlvége-jel határolja. Melyk a leghosszabb
RészletesebbenÁltalános algoritmustervezési módszerek
Általános algoritmustervezési módszerek Ebben a részben arra mutatunk példát, hogy miként használhatóak olyan általános algoritmustervezési módszerek mint a dinamikus programozás és a korlátozás és szétválasztás
RészletesebbenProgramozási módszertan. Dinamikus programozás: A leghosszabb közös részsorozat
PM-07 p. 1/13 Programozási módszertan Dinamikus programozás: A leghosszabb közös részsorozat Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-07
RészletesebbenAlgoritmuselmélet. Hashelés. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem
Algoritmuselmélet Hashelés Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet 9. előadás
Részletesebbenend function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..
A Név: l 2014.04.09 Neptun kód: Gyakorlat vezető: HG BP MN l 1. Adott egy (12 nem nulla értékû elemmel rendelkezõ) 6x7 méretû ritka mátrix hiányos 4+2 soros reprezentációja. SOR: 1 1 2 2 2 3 3 4 4 5 6
RészletesebbenRekurzív algoritmusok
Rekurzív algoritmusok 11. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. november 14. Sergyán (OE NIK) AAO 11 2011. november 14. 1 / 32 Rekurzív
Részletesebben10. Alakzatok és minták detektálása
0. Alakzatok és mnták detektálása Kató Zoltán Képfeldolgozás és Számítógépes Grafka tanszék SZTE http://www.nf.u-szeged.hu/~kato/teachng/ 2 Hough transzformácó Éldetektálás során csak élpontok halmazát
RészletesebbenMásolásra épülő algoritmusok
Másolásra épülő algortmusok Tartalomjegyzék Másolás...2 Másolás és módosítás...3 Másolás és módosítás plusz...4 Tömbelemek módosítása...5 Kválogatás...6 Szétválogat...7 Unó...8 Metszet...9 Összefuttatás...10
RészletesebbenBánsághi Anna 2014 Bánsághi Anna 1 of 68
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
RészletesebbenOptikai elmozdulás érzékelő illesztése STMF4 mikrovezérlőhöz és robot helyzetérzékelése. Szakdolgozat
Mskolc Egyetem Gépészmérnök és Informatka Kar Automatzálás és Infokommunkácós Intézet Tanszék Optka elmozdulás érzékelő llesztése STMF4 mkrovezérlőhöz és robot helyzetérzékelése Szakdolgozat Tervezésvezető:
RészletesebbenMinimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra:
Minimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra: C(T ) = (u,v) T c(u,v) Az F = (V,T) gráf minimális feszitőfája G-nek,
Részletesebben4 205 044-2012/11 Változtatások joga fenntartva. Kezelési útmutató. UltraGas kondenzációs gázkazán. Az energia megőrzése környezetünk védelme
HU 4 205 044-2012/11 Változtatások joga fenntartva Kezelés útmutató UltraGas kondenzácós gázkazán Az energa megőrzése környezetünk védelme Tartalomjegyzék UltraGas 15-1000 4 205 044 1. Kezelés útmutató
RészletesebbenOnline algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.
Online algoritmusok Algoritmusok és bonyolultságuk Horváth Bálint 2018. március 30. Horváth Bálint Online algoritmusok 2018. március 30. 1 / 28 Motiváció Gyakran el fordul, hogy a bemenetet csak részenként
Részletesebben1.Tartalomjegyzék 1. 1.Tartalomjegyzék
1.Tartalomjegyzék 1 1.Tartalomjegyzék 1.Tartalomjegyzék...1.Beezetés... 3.A matematka modell kálasztása...5 4.A ékony lap modell...7 5.Egy más módszer a matematka modell kálasztására...10 6.A felületet
Részletesebbens n s x A m és az átlag Standard hiba A m becslése Információ tartalom Átlag Konfidencia intervallum Pont becslés Intervallum becslés
A m és az átlag Standard hba Mnta átlag 1 170 Az átlagok szntén ngadoznak a m körül. s x s n Az átlagok átlagos eltérése a m- től! 168 A m konfdenca ntervalluma. 3 166 4 173 x s x ~ 68% ~68% annak a valószínűsége,
RészletesebbenEdényrendezés. Futási idő: Tegyük fel, hogy m = n, ekkor: legjobb eset Θ(n), legrosszabb eset Θ(n 2 ), átlagos eset Θ(n).
Edényrendezés Tegyük fel, hogy a rendezendő H = {a 1,...,a n } halmaz elemei a [0,1) intervallumba eső valós számok. Vegyünk m db vödröt, V [0],...,V [m 1] és osszuk szét a rendezendő halmaz elemeit a
RészletesebbenAlgoritmusok, adatszerkezetek I.
NEUMANN JÁNOS INFORMATIKAI KAR Sergyán Szabolcs Algortmusok, adatszerkezetek I. ÓE-NIK 5014 Budapest, 2015. Készült az Óbuda Egyetem án az ÓE-NIK 5014. sz. jegyzetszerződés kereten belül 2014-ben. Szerző:
RészletesebbenHipotézis vizsgálatok. Egy példa. Hipotézisek. A megfigyelt változó eloszlása Kérdés: Hatásos a lázcsillapító gyógyszer?
01.09.18. Hpotézs vzsgálatok Egy példa Kérdések (példa) Hogyan adhatunk választ? Kérdés: Hatásos a lázcsllapító gyógyszer? Hatásos-e a gyógyszer?? rodalomból kísérletekből Hpotézsek A megfgyelt változó
RészletesebbenKeresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán
Keresés Rendezés Feladat Keresés és rendezés A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán 2016. november 7. Farkas B., Fiala
Részletesebben1. előadás. számításokban. Adatszerkezetek és algoritmusok előadás február 12. Kósa Márk, Pánovics János, Szathmáry László és Halász Gábor
1. előadás mint Adatszerkezetek és algoritmusok előadás 2019. február 12. fogalma megadása építőelemei mint helyessége elemzés,, és Debreceni Egyetem Informatikai Kar 1.1 Általános tudnivalók Ajánlott
Részletesebben14. Mediánok és rendezett minták
14. Mediánok és rendezett minták Kiválasztási probléma Bemenet: Azonos típusú (különböző) elemek H = {a 1,...,a n } halmaza, amelyeken értelmezett egy lineáris rendezési reláció és egy i (1 i n) index.
RészletesebbenPeriodikus figyelésű készletezési modell megoldása általános feltételek mellett
Tanulmánytár Ellátás/elosztás logsztka BME OMIKK LOGISZTIKA 9. k. 4. sz. 2004. júlus augusztus. p. 47 52. Tanulmánytár Ellátás/elosztás logsztka Perodkus fgyelésű készletezés modell megoldása általános
RészletesebbenStatisztika I. 3. előadás. Előadó: Dr. Ertsey Imre
Statsztka I. 3. előadás Előadó: Dr. Ertsey Imre Vszonyszámok Statsztka munka: adatgyűjtés, rendszerezés, összegzés, értékelés. Vszonyszámok: Két statsztka adat arányát kfejező számok, Az un. leszármaztatott
RészletesebbenII. Rákóczi Ferenc Kárpátaljai Magyar Fıiskola. Pataki Gábor. STATISZTIKA I. Jegyzet
II. Rákócz Ferenc Kárátalja Magyar Fıskola Patak Gábor STATISZTIKA I. Jegyzet 23 Tartalomjegyzék evezetés... 3 I. Statsztka alafogalmak... 4. Statsztka kalakulása, tudománytörténet összefüggése... 4.2
RészletesebbenElosztott rendszerek játékelméleti elemzése: tervezés és öszönzés. Toka László
adat Távközlés és Médanformatka Tanszék Budapest Műszak és Gazdaságtudomány Egyetem Eurecom Telecom Pars Elosztott rendszerek játékelmélet elemzése: tervezés és öszönzés Toka László Tézsfüzet Témavezetők:
RészletesebbenParaméteres és összetett egyenlôtlenségek
araméteres és összetett egyenlôtlenségek 79 6 a) Minden valós szám b) Nincs ilyen valós szám c) c < vagy c > ; d) d # vagy d $ 6 a) Az elsô egyenlôtlenségbôl: m < - vagy m > A második egyenlôtlenségbôl:
RészletesebbenSzerelési útmutató FKC-1 síkkollektor tetőre történő felszerelése Junkers szolár rendszerek számára
Szerelés útmutató FKC- síkkollektor tetőre történő felszerelése Junkers szolár rendszerek számára 604975.00-.SD 6 70649 HU (006/04) SD Tartalomjegyzék Általános..................................................
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy
Diszkrét matematika 3. estis képzés 2018. ősz 1. Diszkrét matematika 3. estis képzés 10. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék
RészletesebbenKiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése
Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése Dr. Kallós Gábor 2014 2015 1 Az Ordó jelölés Azt mondjuk, hogy az f(n) függvény eleme az Ordó(g(n)) halmaznak, ha van olyan c konstans (c
RészletesebbenAlkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok és programozási tételek
Részletesebben7. előadás. Gyorsrendezés, rendezés lineáris lépésszámmal. Adatszerkezetek és algoritmusok előadás március 6.
7. előadás, rendezés lineáris lépésszámmal Adatszerkezetek és algoritmusok előadás 2018. március 6.,, és Debreceni Egyetem Informatikai Kar 7.1 Általános tudnivalók Ajánlott irodalom: Thomas H. Cormen,
RészletesebbenMATEMATIKAI STATISZTIKA KISFELADAT. Feladatlap
Közlekedésmérnök Kar Jármőtervezés és vzsgálat alapja I. Feladatlap NÉV:..tk.:. Feladat sorsz.:.. Feladat: Egy jármő futómő alkatrész terhelésvzsgálatakor felvett, az alkatrészre ható terhelı erı csúcsértékek
Részletesebben;3 ; 0; 1 7; ;7 5; 3. pozitív: ; pozitív is, negatív is: ;
. A racion lis sz mok A tanult sz mok halmaza A) Ábrázold számegyenesen az alábbi számokat! 8 + + 0 + 7 0 7 7 0 0. 0 Válogasd szét a számokat aszerint, hogy pozitív: pozitív is, negatív is: negatív: sem
RészletesebbenAlgoritmusok bonyolultsága
Algoritmusok bonyolultsága 9. előadás http://www.ms.sapientia.ro/~kasa/komplex.htm 1 / 18 Közelítő algoritmusok ládapakolás (bin packing) Adott n tárgy (s i tömeggel) és végtelen sok 1 kapacitású láda
RészletesebbenRendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat
9. Előadás Rendezések A rendezési probléma: Bemenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat Kimenet: a bemenő sorozat olyan (a 1, a 2,,a n ) permutációja, hogy a 1 a 2 a n 2 Rendezések Általánosabban:
RészletesebbenAutomaták és formális nyelvek
Automaták és formális nyelvek Bevezetés a számítástudomány alapjaiba 1. Formális nyelvek 2006.11.13. 1 Automaták és formális nyelvek - bevezetés Automaták elmélete: információs gépek általános absztrakt
RészletesebbenTartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.
Keresés Rendezés Feladat Keresés Rendezés Feladat Tartalom Keresés és rendezés A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán
RészletesebbenAlgoritmuselmélet 6. előadás
Algoritmuselmélet 6. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Március 4. ALGORITMUSELMÉLET 6. ELŐADÁS 1 Hash-elés
Részletesebben1. numere.txt n (1 n 10000) n növekvő kilenc a) Pascal/C++ Például: NUMERE.TXT
Az informatika érettségi harmadik tételsora tartalmaz egy feladatot, melyet hatékonyan kell megoldani. A program megírása mellett követelmény a megoldásban használt módszer rövid leírása, kitérve a módszer
RészletesebbenParaméteres és összetett egyenlôtlenségek
araméteres és összetett egyenlôtlenségek 79 6 a) Minden valós szám b) Nincs ilyen valós szám c) c < vagy c > ; d) d # vagy d $ 6 a) Az elsô egyenlôtlenségbôl: m < - vagy m > A második egyenlôtlenségbôl:
RészletesebbenFibonacci számok. Dinamikus programozással
Fibonacci számok Fibonacci 1202-ben vetette fel a kérdést: hány nyúlpár születik n év múlva, ha feltételezzük, hogy az első hónapban csak egyetlen újszülött nyúl-pár van; minden nyúlpár, amikor szaporodik
Részletesebben2005_01/1 Leírtunk egymás mellé hét racionális számot úgy, hogy a két szélső kivételével mindegyik eggyel nagyobb a két szomszédja szorzatánál.
Számolásos feladatok, műveletek 2004_1/1 Töltsd ki az alábbi bűvös négyzet hiányzó mezőit úgy, hogy a négyzetben szereplő minden szám különböző legyen, és minden sorban, oszlopban és a két átlóban is ugyanannyi
RészletesebbenDr. Schuster György február / 32
Algoritmusok és magvalósítások Dr. Schuster György OE-KVK-MAI schuster.gyorgy@kvk.uni-obuda.hu 2015. február 10. 2015. február 10. 1 / 32 Algoritmus Alapfogalmak Algoritmus Definíció Algoritmuson olyan
RészletesebbenThe original laser distance meter. The original laser distance meter
Leca Leca DISTO DISTO TM TM D510 X310 The orgnal laser dstance meter The orgnal laser dstance meter Tartalomjegyzék A műszer beállítása - - - - - - - - - - - - - - - - - - - - - - - - - 2 Bevezetés - -
Részletesebben