13. Rendezési algoritmusok

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "13. Rendezési algoritmusok"

Átírás

1 3. Redezés algortmusok Redezés probléma Bemeet: Azoos típusú adatok H = {a,...,a } halmaza, amelyeke értelmezett egy leárs redezés relácó. (A redezés relácó maga s lehet bemeet paraméter.) Kmeet: A H halmaz elemeek egy redezéstartó felsorolása, tehát olya S = b,...,b sorozat, amelyre b b... b, és H = {b,...,b }. Belső redezés. H és S tárolása a főtárba törték. Külső redezés. Vagy H vagy S tárolása külső (lemezes állomáyba) tároló törték. Helybe redezés. Ha a meeet H halmazt és a kmeet S sorzatot ugyaaz az adatszerkezet tárolja. 3.. Kválasztó redezés Elv algortmus: S := ; Whle H <> /0 Do Beg x := H mmáls eleme; Tegyük x-et az S sorozat végére; Töröljük x-et H-ból; Ed m S H. ábra. A kválasztó redezés megvalósítása helybe Procedure Kvalasztored(Var T:Tomb); Var,j,m : Iteger; E : Elemtp; Beg For := To N- Do Beg {S=T[..-], H=T[..N]} m := ; For j := + To Tmeret Do If T[j].kulcs < T[m].kulcs The m := j; {T[m]=M(H)} E := T[]; T[] := T[m]; T[m] := E; {T[m] S végére; T[m] törlése H-ból} Ed Ed (* Kvalasztored *);

2 A KIVALASZTOREND futás dejéek elemzése Jelölje T () a végrehajtott elem művelet számát, ha H = = (5 + ) T () 5( ) + 5( ) + = ( ) = (5 + ( )) T () 5( ) + T () ( )(5 + ) = T l j () = T a () = T lr () = Θ( ) 3.. Beszúró redezés Elv algortmus: S := ; {üres output sorozat létesítés} Whle H <> /0 Do Beg x := H egy tetszőleges eleme; Szúrjuk be x-et az S sorozatba; Töröljük x-et H-ból; Ed j S H. ábra. A beszúró redezés megvalósítása helybe Procedure Beszurored (Var T:Tomb;K:RedRelTp); Var,j : Iteger; E : Elemtp; Beg For := To N Do Beg {S=T[..-], H=[..N]} E := T[]; j := -; Whle(j>0)Ad K(E,T[j]) Do Beg T[j+] := T[j]; Dec(j) Ed{whle}; {S[.. j] E < S[ j +.. ] } T[j+] := E; Ed{for} Ed (* BeszuroRed *);

3 A BESZUROREND futás dejéek elemzése Legjobb eset: az put redezett: T l j () = = 5 = 5( ) = O() Legroszabb eset: az put fordította redezett, ekkor a a Whle cklus magja -szer hajtódk végre, tehát T lr () = = ( ) = = = ( ) = O( ) Átlagos eset: rag(s,x) := { j : S[ j] > x} rag(s, T []) lehetséges értéke: 0,,, azoos valószíűséggel. Tehát a whle cklusmag végrehajtás számáak átlágos (várható) értéke: Tehát T a () = 3.3. Kupacredezés. (Wllams, Floyd 96) (0 + + ) = ( ) = ( ) = ( ) = = ( ) = O( ) = S = (M, R, Adat) adatszerkezet, ahol M =.., R = {Apa : M M} Apa() = dv, ha > Az S (fa) adatszerkezet Apa f u kapcsolattal s megadható: ábra. Kupac adatszerkezet Bal() :=, ha Jobb() := +, ha + Def. S (maxmumos) kupac, ha redezett a -ra ézve. Általáosa, T = k..l. Ekkor több fából áll az adatszerkezet. Apa() = dv, ha k Def. Az a k,,a l sorozat (maxmumos) kupac, ha k..l ha r = dv k akkor a r a 3

4 { Globáls programelemek a KupacRed eljáráshoz : Cost MaxN =??? ;{ a maxmáls tömbméret } Type Kulcstp =??? ;{ a redezés mező típusa } Adattp =??? ;{ az adatmező típusa } Elemtp = Record kulcs : Kulcstp; adat : Adattp Tomb = Array[..MaxN] Of Elemtp; } Procedure KupacRed(Var T : Tomb; N:Logt); Var : Logt; E : Elemtp; Procedure Sullyeszt(K,L : Logt ); {Iput : T[K+..L] kupac, Output: T[K..L] kupac } Var Apa,Fu : Logt; Beg{Sullyeszt} E:=T[K]; Apa:=K; Fu:=*Apa; Whle (Fu <= L) Do Beg If (Fu < L) Ad (T[Fu].kulcs < T[Fu+].kulcs) The Fu := Fu+; If E.kulcs >= T[Fu].kulcs The Break Else Beg T[Apa] := T[Fu]; Apa:=Fu; Fu:=*Apa Ed Ed{whle}; T[Apa] := E Ed{Sullyeszt}; Beg{KupacRed} For := N Dv Dowto Do Sullyeszt(, N);{Kupacépít} For := N Dowto Do Beg E:=T[]; T[]:=T[]; T[]:=E; Sullyeszt(,-) Ed{for }; Ed{KupacRed}; A kupacépítés futás deje Def. h-magaságú telített bárs fa: F h F 0 =, F h = (F h,f h ) ha h > 0 F h magassága = h F h potjaak száma h 0 k = h

5 Legye F -potú bárs kupac; F = Ekkor h(f) az a legksebb k, amelyre F k F k k lg( + ) h = lg( + ) A kupacépítés sorá a SULLYESZT ayszor hajtódk végre, mt aháy külöböző em levél részfája va a felépítedő -elemű kupacak.. ábra. Kupac részfá Jelölje R(, k) az -potú kupac k magasságú részfáak számát. R(,k) h k = h = h k k k Mvel SULLYESZT futás deje legrosszabb esetbe azo fa magasságával aráyos, amelybe a beszúrás törték, így a kupacépítés futás dejére a következőt kapjuk: T lr () h k=0 h R(, k)o(k) k= k O(k) O( k=0 k k ) = O( ) = O() = O() ( ) "Mdkét oldalt derválva": A KUPACREND futás deje x k = k=0 x ha x < kx k x = k=0 ( x) T lr () O() + O(h) k= O() +O( k= lg ) = O() +O( lg ) = O( lg ) 5

6 3.. A gyorsredezés (Hoare, 96) Elv algortmus: Legye FELOSZT(H,H b,x,h j ) olya művelet, amelyre teljesül a következő kmeett feltétel: x Pre(H) H b = {y : x y Pre(H) y x} H j = {y : y Pre(H) x < y} Tehát Pre(H) = H b {x} H j Ezért a következő oszd-meg-és-uralkodj elvű algortmus a redezés feladat helyes megoldását adja. Redez(H:Halmaz):Sorozat; Var x : Elemtp; S b, S j :Sorozat; H b, H j :Halmaz; Beg{Redez} If H The Beg S := H Retur(S) Feloszt(H,H b,x,h j ) ; {megosztás} S b := Redez(H b ); {uralkodás} S j := Redez(H j ); S := S b x S j ; {összerakás} Retur(S); Ed{Redez}; A Feloszt algortmus: Feloszt(H:Halmaz;Var H b,h j :Halmaz; x:elemtp); Beg{Feloszt} x felosztó elem választás; H b := /0; H j := /0; For y H Do {Ivarás: Max(H b ) x < M(H j )} If y x y x The H b := H b + {y} Else H j := H j + {y} {H = H b H j } Ed{Feloszt}; Megjegyzés: lehet H b = /0 vagy H j = /0 Megvalósítás: helybe, tömbbel Feloszt Lomuto-féle megvalósítása 6

7 bal jobb j j j 8 7 j j j j ábra. A FELOSZT eljárás működése. Fucto Feloszt( bal, jobb : Logt):Logt ; {H = T [bal.. jobb]} Var x,e : Elemtp;,j : Logt; Beg{Feloszt} x:= T[jobb]; :=bal-; For j:=bal To jobb- Do {Ivarás:H b = T [bal..],h j = T [ +.. j ]} If T [ j] x The Beg :=+; E:=T[]; T[]:=T[j]; T[j]:=E; :=+; E:=T[]; T[]:=T[jobb]; T[jobb]:=E; Feloszt:=; {H b = T [bal.. ],H j = T [ +.. jobb]} Ed{Feloszt}; Procedure GYORSREND(Var T:Tomb); Procedure Redez(bal,bobb : Logt); Var f : Logt; 7

8 Beg{Redez} f:= Feloszt(bal, jobb); If bal<f- The Redez(bal, f-); If f+<jobb The Redez(f+, jobb) Ed{Redez}; Beg Redez(, N) {GyorsRed} 3... A gyorsredezés hatékoysága Legrosszabb eset T lr () = max (T lr(q) + T lr ( q )) + Θ() 0 q T lr () max 0 q (cq + c( q ) ) + Θ() = c max 0 q (q + ( q ) ) + Θ() A q +( q ) kfejezés maxmumát a 0 q tervallum valamelyk végpotjába vesz fel, ezért max 0 q (q + ( q ) ) ( ) = +. Tehát T lr () c c( ) + Θ() c Tehát T lr () = O( ). Legjobb eset Ha mde FELOSZT felez az tervallumot (a felosztadó halmazt). Ekkor mde szte c a FELOSZT futás deje, és lg szt léve, a teljes futás dő: T l j () = O( lg) Átlagos eset 3.. lemma. Legye X a GYORSREND eljárás végrehajtása sorá a FELOSZT által végrehajtott összehasolítások száma elemű bemeetre. Ekkor GYORSREND teljes futás deje O( + X). Céluk X átlagos (várható) értékéek kszámítása. Legye a T bemeet tömb eleme redezette z,z,...,z, tehát z az -edk legksebb eleme a bemeetek. Defáljuk a Z j = {z,z +,...,z j } halmazokat, tehát a redezésbe z és z j között elemek halmaza. 8

9 Az algortmus mkor hasolítja össze z és z j elemeket? Vegyük észre, hogy bármely két elem legfeljebb egyszer hasolítódk össze,mert a felsztó elem em szerepel a felbotásba keletkező H b és H j halmazokba, amelyere rekurzív hívás törték. Jelölje eze összehasolítások számát X, j. X = Az összehasolítások E(X) átlagos számára kapjuk: = X j. j=+ E(X) = E( X j ) = j=+ = = = = E(X j ) j=+ Pr{z összehasolít z j } () j=+ z és z j összehasolítására akkor és csak akkor lkerül sor, ha az első felosztó elem a Z j halmazból vagy z, vagy z j. Mvel a Z j halmazak j + eleme va, és mde elem egyforma valószíűséggel lehet a felosztó elem, ezért Pr{z összehasolít z j } = Pr{z vagy z j első felosztó elem Z j -ből} = Pr{z első felosztó elem Z j -ből} = = + Pr{z j első felosztó elem Z j -ből} j + + j + j + () E(X) = = < = = = j=+ k= k= j + k + k = O(lg ) = = O( lg ) (3) Tehát GYORSREND átklagos futás deje T a () = O( lg) A gyorsredezés véletleített változata. 9

10 Fucto VeletleFeloszt( bal, jobb : Logt):Logt ; Var E : Elemtp; : Logt; Beg{VeletleFeloszt} :=Radom(jobb-bal+)+; E:=T[]; T[]:=T[jobb]; T[jobb]:=E; VeletleFeloszt:=Feloszt(bal,jobb); Ed{VeletleFeloszt}; A Hoare-féle felsosztás. { Globals objektumok a GyorsRed eljarashoz : Cost MaxN =??? ;(* a tömb dextpusa =..MaxN *) Type Kulcstp =??? ;(* a redezés mező típusa *) Adattp =??? ;(* az adatmező típusa *) Elemtp = Record kulcs : Kulcstp; adat : Adattp Tomb = Array[..N] Of Elemtp; Procedure BeszuroRed(Var T : Tomb); {\$I...} } Procedure GyorsRed(Var T : Tomb; N:Logt); Fucto HoareFeloszt( Bal,Jobb : Logt): Logt; Var Fe,E : Elemtp;,j : Logt; Beg Fe := T[(Bal+Jobb) Dv ]; := Bal-; j := Jobb+; Whle True Do Beg Repeat Ic() Utl (T[].kulcs >= Fe.kulcs); Repeat Dec(j) Utl (Fe.kulcs >= T[j.kulcs]); If < j The Beg E := T[]; T[] := T[j]; T[j] := E; Ed Else Beg Feloszt:=j; Ext 0

11 Ed{whle}; Ed (* HoareFeloszt *); Procedure Redez(bal,jobb : Logt); Var f : Logt; Beg f := HoareFeloszt(bal, jobb); If bal+0 < f The Redez(bal, f); If f+0 < jobb The Redez(f+, jobb) Ed (* Redez *); Beg(* GyorsRed *) Redez(, N); Beszurored(T) Ed (* GyorsRed *); 3.5. Általáos redezés algortmusok lr. esetéek alsó korlátja Dötés fa modell <= : <= > :3 :3 > <= > <,,3 > <= <,3,> :3 <,,3> :3 > <= > <3,,> <,3,> <3,,> 6. ábra. Dötés fa 3.. tétel. Mde elemet redező dötés fa magassága Ω( log ). Bzoyítás. A fa leveleek száma!, tehát ha a fa magassága h, akkor h! h lg(!) lg(( e ) ) = lg lg e = Ω( lg ) Mde általáos redezés algortmusra: T lr () = Ω( lg )

12 3.6. Leárs dejű redezés algortmusok Számláló redezés { Globáls programelemek a SzamlaloRed eljáráshoz : Cost N =??? ;(* a tomb dextpusa =..N *) M =??? ;(* a kulcstpus: 0..M *) Type Kulcstp = 0..M ;(* a redezes mezo kulcstpusa *) Adattp =??? ;(* az adatmezo tpusa *) Elemtp = Record kulcs : Kulcstp; adat : Adattp Tomb = Array[..N] Of Elemtp; } Procedure SzamlaloRed(Var T,T : Tomb); Var,j : Logt; S: Array[0..M] Of Logt; Beg For := 0 To M Do S[]:= 0; For := To N Do Ic(S[T[].kulcs]); For := To M Do S[]:= S[-]+S[]; (* S[]= {j T[j] <= } *) For := N DowTo Do Beg j := T[].kulcs; T[ S[j] ]:= T[]; Dec(S[j]); Ed Ed (* SzamlaloRed *); A SZAMLALOREND algortmus futás deje Θ(M + N) Stablak evezzük az olya redezés algortmust, amely megőrz az azoos kulcsú elemek sorredjét. Állítás. A SZAMLALOREND algortmus stabl redezés. Radx (számjegyes) redezés Példa:

13 Bemeet: H={a,...,a }, az elemek típusa Type KulcsTp=Array[..d] of Char {Strg}; Adattp =???; Elemtp=Record Adat:Adattp; Kulcs:Kulcstp A redezés relácó a lexkografkus redezés: X =< x,...,x d >,Y =< y,...,y d > Def. X < Z (lexkografkusa), ha ( )( d)((x < y ) ( j < )(x j = y j )) Elv: For :=d DowTo Do H Stabl redezése a kulcs -edk jegye szert; ábra. Adatszerkezet a radx redezéshez. { Globals programelemek a RadxRe eljarashoz: Type Elemtp = Record (* a redezedo adatok tpusa *) kulcs : Strg[???]; adat :??? 3

14 Lac = ^Cella; Cella = Record Elem: Elemtp; Csat: Lac } Procedure RadxRed(Var L : Lac); Var T : Array[Char] Of Record Eleje,Vege:Lac; C : Char; E : Lac;, Maxhossz : Word; Beg Maxhossz := 0; E:=L;(* a maxmals szohossz meghatarozasa *) Whle E <> Nl Do Beg If Legth(E^.Elem.kulcs) > Maxhossz The Maxhossz := Legth(E^.Elem.kulcs); E:= E^.Csat For C := Chr(0) To Chr(55) Do (* ures reszlstak letrehozasa *) Beg New(T[C].Vege); T[C].Eleje:= T[C].Vege; For := Maxhossz Dowto Do Beg Whle L <> Nl Do (* szavak szetosztasa a reszlstakra, *) Beg (* az -edk betu szeret *) E:= L; L:= L^.Csat; If <= Legth(E^.Elem.kulcs) The C := E^.Elem.kulcs[] Else C := ; T[C].Vege^.Csat:= E; T[C].Vege:= E; L:= Nl; For C := Chr(55) DowTo Chr(0) Do Beg (* a reszlstak osszekapcsolasa *) T[C].Vege^.Csat:= L; L:= T[C].Eleje^.Csat; T[C].Vege:=T[C].Eleje; Ed

15 Ed Ed (* RadxRed *); Vödrös redezés Tegyük fel, hogy a redezedő H = {a,...,a } halmaz elemeek kulcsa a [0,) tervallumba eső valós számok (Real). Vegyük m db vödröt, V [0],...,V [m ] és osszuk szét a redezedő halmaz elemet a vödrökbe úgy, hogy az a elem a a.kulcs m sorszámú vödörbe kerüljö. Majd redezzük az egy vödörbe került elemeket, és a vödrök sorszáma szert övekvő sorrebe füzzük össze a redezett részsorozatokat. T V ábra. Példa vödrös redezésre { Globáls programelemek a VodrosRed eljáráshoz : Cost N =??? ;(* a tömb dextpusa =..N *) Type Kulcstp = Real ;(* a redezés mező kulcstípusa *) Adattp =??? ;(* az adatmező típusa *) Elemtp = Record kulcs : Kulcstp; adat : Adattp Tomb = Array[..N] Of Elemtp; } Procedure VodrosRed(Var T,T : Tomb); Cost M=N; {a vödrök száma} Type Lac=^Cella; Cella=Record dex: Word; Csat: Lac 5

16 Var E: Elemtp; V:Array[0..M-] Of Lac;,j,k : Word; p,q,uj: Lac; Beg{VodrosRed} For := 0 To M- Do V[]:= Nl; For := To N Do Beg {az elemek szétosztása vödrökbe} j:= Truc(T[].kulcs*M); New(Uj); Uj^.dex:= ; Uj^.csat:= V[j]; V[j]:= Uj; := ; {a vödrökbe lévő elemek összefűzése és} For j := 0 To M- Do Beg{redezése beszúro redezéssel} p:= V[j]; Whle p <> Nl Do Beg E:= T[p^.dex]; k:= -; Whle (k>0) Ad (T[k].kulcs > E.kulcs) Do Beg T[k+]:= T[k]; Dec(k); T[k+]:= E; q:= p; p:= p^.csat; Dspose(q); Ic(); Ed{whle p}; Ed{for }; {VodrosRed} A VODROSREND futás dejéek elemzése. Legrosszabb eset Ez akkor következk be, ha mde elem egy vödörbe kerül, és mvel a vödröket beszúrú edezéssel redezzük, amem a legrosszabb esete O( ), így T lr () = O( ). Legjobb eset eset Ez akkor következk be, ha mde elem külö vödörbe kerül, így T l j () = O(). Átlagos eset eset T a () = Θ()> 6

14. Mediánok és rendezett minták

14. 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észletesebben

VÉLETLENÍTETT ALGORITMUSOK. 1.ea.

VÉLETLENÍTETT ALGORITMUSOK. 1.ea. VÉLETLENÍTETT ALGORITMUSOK 1.ea. 1. Bevezetés - (Mire jók a véletleített algoritmusok, alap techikák) 1.1. Gyorsredezés Vegyük egy ismert példát, a redezések témaköréből, méghozzá a gyorsredezés algoritmusát.

Részletesebben

Számláló rendezés. Példa

Számláló rendezés. Példa Alsó korlát rendezési algoritmusokra Minden olyan rendezési algoritmusnak a futását, amely elempárok egymással való összehasonlítása alapján működik leírja egy bináris döntési fa. Az algoritmus által a

Részletesebben

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

Specifiká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észletesebben

Edé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. 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észletesebben

Kétoldali hibás Monte Carlo algoritmus: mindkét válasz esetén hibázhat az algoritmus, de adott alsó korlát a hibázás valószínűségére.

Kétoldali hibás Monte Carlo algoritmus: mindkét válasz esetén hibázhat az algoritmus, de adott alsó korlát a hibázás valószínűségére. Véletleített algoritmusok Tegyük fel, hogy va két doboz (A,B), amely egyike 1000 Ft-ot tartalmaz, a másik üres. 500 Ft-ért választhatuk egy dobozt, amelyek a tartalmát megkapjuk. A feladat megoldására

Részletesebben

Algoritmuselmélet 2. előadás

Algoritmuselmé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észletesebben

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

Specifiká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észletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan

Részletesebben

Számjegyes vagy radix rendezés

Számjegyes vagy radix rendezés Számláló rendezés Amennyiben a rendezendő elemek által felvehető értékek halmazának számossága kicsi, akkor megadható lineáris időigényű algoritmus. A bemenet a rendezendő elemek egy n méretű A tömbben

Részletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar Algoritmizálás Horváth Gyula Szegedi Tudomáyegyetem Természettudomáyi és Iformatikai Kar horvath@if.u-szeged.hu. Mohó algoritmusok A mohó stratégia elemi 1. Fogalmazzuk meg az optimalizációs feladatot

Részletesebben

Programozási tételek. Elemi programozási tételek. (Sorozathoz érték rendelése)

Programozási tételek. Elemi programozási tételek. (Sorozathoz érték rendelése) Programozás tételek I. Elem programozás tételek (Sorozathoz érték redelése) Olya algortmusokat tárgyaluk meg, amelyek a programozás sorá redszerese előforduló feladatok megoldására kész választ adak. Ezeket

Részletesebben

Információs rendszerek elméleti alapjai. Információelmélet

Információs rendszerek elméleti alapjai. Információelmélet Iformácós redszerek elmélet alaja Iformácóelmélet A forrás kódolása csatora jelekké 6.4.5. Molár Bált Beczúr Adrás NMMMNNMNfffyyxxfNNNNxxMNN verzazazthatóvsszaálímdeveszteségcsaakkorfüggvéykódolásaakódsorozat:eredméyekódolássorozatváltozó:forás

Részletesebben

1. ábra. Számláló rendezés

1. ábra. Számláló rendezés 1:2 2:3 1:3 1,2,3 1:3 1,3,2 3,1,2 2,1,3 2:3 2,3,1 3,2,1 1. ábra. Alsó korlát rendezési algoritmusokra Minden olyan rendezési algoritmusnak a futását, amely elempárok egymással

Részletesebben

17. Tördelőtáblák (Hasítótáblák)

17. Tördelőtáblák (Hasítótáblák) 7. Tördelőtáblák (Hasítótáblák) Legye U az Elemtip, uiverzum, H = {a,,a } U Vegyük egy T:Array[0..M-] of Elemtip tömbböt, amelybe a H halmazt tároli akarjuk. Válasszuk egy h : U {0,,M } függvéyt, amely

Részletesebben

Elsőbbségi (prioritásos) sor

Elsőbbségi (prioritásos) sor Elsőbbségi (prioritásos) sor Közapi fogalma, megjeleése: pl. sürgősségi osztályo a páciesek em a beérkezési időek megfelelőe, haem a sürgősség mértéke szerit kerülek ellátásra. Az operációs redszerekbe

Részletesebben

Rendezés. 1. Példa: Legyen A=R, és a reláció a kisebb < jel. Az a b reláció azokat a számpárokat jelenti, amelyekre fennáll az a<b összefüggés.

Rendezés. 1. Példa: Legyen A=R, és a reláció a kisebb < jel. Az a b reláció azokat a számpárokat jelenti, amelyekre fennáll az a<b összefüggés. Redezés Defiíció: A reláció Valamely A halmaz eseté a AA részhalmazt az A halmazo értelmezett relációak evezzük. Azt modjuk, hogy az A halmaz a és b eleme a relációba va, ha (a,b). Rövide ezt így írjuk:

Részletesebben

4.2. Rendezés. 1. Példa: A=R, és a reláció a kisebb < jel. Az aρb reláció azokat a számpárokat jelenti, amelyekre fennáll az a<b összefüggés.

4.2. Rendezés. 1. Példa: A=R, és a reláció a kisebb < jel. Az aρb reláció azokat a számpárokat jelenti, amelyekre fennáll az a<b összefüggés. 4.. Redezés Defiíció: A reláció Valamely A halmaz eseté a ρ A A részhalmazt az A halmazo értelmezett relációak evezzük. Azt modjuk, hogy az A halmaz a és b eleme a ρ relációba va, ha (a,b) ρ. Rövide ezt

Részletesebben

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

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 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észletesebben

Algoritmusok és adatszerkezetek gyakorlat 09 Rendezések

Algoritmusok é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észletesebben

Programozás alapjai. 5. előadás

Programozás alapjai. 5. előadás 5. előadás Wagner György Általános Informatikai Tanszék Cserélve kiválasztásos rendezés (1) A minimum-maximum keresés elvére épül. Ismétlés: minimum keresés A halmazból egy tetszőleges elemet kinevezünk

Részletesebben

7 7, ,22 13,22 13, ,28

7 7, ,22 13,22 13, ,28 Általános keresőfák 7 7,13 13 13 7 20 7 20,22 13,22 13,22 7 20 25 7 20 25,28 Általános keresőfa Az általános keresőfa olyan absztrakt adatszerkezet, amely fa és minden cellájában nem csak egy (adat), hanem

Részletesebben

V. GYAKORLATOK ÉS FELADATOK ALGEBRÁBÓL

V. GYAKORLATOK ÉS FELADATOK ALGEBRÁBÓL 86 Összefoglaló gyaorlato és feladato V GYAKORLATOK ÉS FELADATOK ALGEBRÁBÓL 5 Halmazo, relácó, függvéye Bzoyítsd be, hogy ha A és B ét tetszőleges halmaz, aor a) P( A) P( B) P( A B) ; b) P( A) P ( B )

Részletesebben

Rendezések. Összehasonlító rendezések

Rendezések. Összehasonlító rendezések Rendezések Összehasonlító rendezések Remdezés - Alapfeladat: Egy A nevű N elemű sorozat elemeinek nagyság szerinti sorrendbe rendezése - Feltételezzük: o A sorozat elemei olyanok, amelyekre a >, relációk

Részletesebben

Járattípusok. Kapcsolatok szerint: Sugaras, ingajárat: Vonaljárat: Körjárat:

Járattípusok. Kapcsolatok szerint: Sugaras, ingajárat: Vonaljárat: Körjárat: JÁRATTERVEZÉS Kapcsolatok szert: Sugaras, gaárat: Járattípusok Voalárat: Körárat: Targocás árattervezés egyszerű modelle Feltételek: az ayagáram determsztkus, a beszállítás és kszállítás dőpot em kötött

Részletesebben

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1] Kupac adatszerkezet A bináris kupac egy majdnem teljes bináris fa, amely minden szintjén teljesen kitöltött kivéve a legalacsonyabb szintet, ahol balról jobbra haladva egy adott csúcsig vannak elemek.

Részletesebben

6. Elsőbbségi (prioritásos) sor

6. Elsőbbségi (prioritásos) sor 6. Elsőbbségi (prioritásos) sor Közapi fogalma, megjeleése: pl. sürgősségi osztályo a páciesek em a beérkezési időek megfelelőe, haem a sürgősség mértéke szerit kerülek ellátásra. Az operációs redszerekbe

Részletesebben

Módosítható Prioritási sor Binomiális kupaccal. Wednesday, March 21, 12

Módosítható Prioritási sor Binomiális kupaccal. Wednesday, March 21, 12 Módosítható Prioritási sor Binomiális kupaccal modosit(x,k) {! if (k>x.kulcs) {!! x.kulcs=k ;!! y=x!! z=x.apa ;!! while(z!=nil and y.kulcs

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 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észletesebben

Algoritmusok és adatszerkezetek II.

Algoritmusok és adatszerkezetek II. Algoritmusok és adatszerkezetek II. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 3. Kiegyensúlyozott keresőfák A T tulajdonság magasság-egyensúlyozó

Részletesebben

Sztringkezelő függvények. A string típusú változók kezelése, használata és szerepük a feldolgozás során

Sztringkezelő függvények. A string típusú változók kezelése, használata és szerepük a feldolgozás során Sztringkezelő függvények A string típusú változók kezelése, használata és szerepük a feldolgozás során Mi string? Röviden: karakterek tárolására alkalmas típus A karakterek betűk, számok, vagy tetszőleges,

Részletesebben

Mérési adatok feldolgozása. 2008.04.08. Méréselmélet PE_MIK MI_BSc, VI_BSc 1

Mérési adatok feldolgozása. 2008.04.08. Méréselmélet PE_MIK MI_BSc, VI_BSc 1 Mérés adatok feldolgozása 2008.04.08. Méréselmélet PE_MIK MI_BSc, VI_BSc Bevezetés A mérés adatok külöböző formába, általába ömlesztve jeleek meg Ezeket az adatokat külöböző szempotok szert redez kértékel

Részletesebben

Adatszerkezet - műveletek

Adatszerkezet - műveletek Adatszerkezet - műveletek adatszerkezet létrehozása adat felvétele adat keresése adat módosítása adat törlése elemszám visszaadása minden adat törlése (üresít) adatszerkezet felszámolása (megszüntet) +

Részletesebben

Algoritmusok és adatszerkezetek gyakorlat 07

Algoritmusok é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észletesebben

Önszervező bináris keresőfák

Önszervező bináris keresőfák Önszervező bináris keresőfák Vágható-egyesíthető halmaz adattípus H={2,5,7,11,23,45,75} Vag(H,23) Egyesit(H1,H2) H1= {2,5,7,11} H2= {23,45,75} Vágás A keresési útvonal mentén feldaraboljuk a fát, majd

Részletesebben

Tuesday, March 6, 12. Hasító táblázatok

Tuesday, March 6, 12. Hasító táblázatok Hasító táblázatok Halmaz adattípus U (kulcsuniverzum) K (aktuális kulcsok) Függvény adattípus U (univerzum) ÉT (értelmezési tartomány) ÉK (érték készlet) Milyen az univerzum? Közvetlen címzésű táblázatok

Részletesebben

2012.03.01. Méréselmélet PE_MIK MI_BSc, VI_BSc 1

2012.03.01. Méréselmélet PE_MIK MI_BSc, VI_BSc 1 Mérés adatok feldolgozása 202.03.0. Méréselmélet PE_MIK MI_BSc, VI_BSc Bevezetés A mérés adatok külöböző formába, általába ömlesztve jeleek meg Ezeket az adatokat külöböző szempotok szert redez kértékel

Részletesebben

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

1. 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észletesebben

Diszkrét Matematika 1. óra Fokszámsorozatok

Diszkrét Matematika 1. óra Fokszámsorozatok Dszkrét Matematka. óra 29.9.7. A köetkezı fogalmakat smertek tektük: gráf, egyszerő gráf, hurokél, párhuzamos élek, fa, ághatás operácó. Fokszámsorozatok Def.: G gráf fokszámsorozata fokaak reezett öekı

Részletesebben

A 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 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észletesebben

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

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 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észletesebben

Algoritmusok és adatszerkezetek I. 10. előadás

Algoritmusok és adatszerkezetek I. 10. előadás Algortmusok és adatszerkezetek I. 10. előadás Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P... m! 1 2 m 1 Ekkor F P P P P......,

Részletesebben

Kupac adatszerkezet. 1. ábra.

Kupac adatszerkezet. 1. ábra. Kupac adatszerkezet A bináris kupac egy majdnem teljes bináris fa, amely minden szintjén teljesen kitöltött kivéve a legalacsonyabb szintet, ahol balról jobbra haladva egy adott csúcsig vannak elemek.

Részletesebben

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8. Algoritmuselmélet 2-3 fák Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 8. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet 8. előadás

Részletesebben

1. ábra. Egy rekurzív preorder bejárás. Egy másik rekurzív preorder bejárás

1. ábra. Egy rekurzív preorder bejárás. Egy másik rekurzív preorder bejárás Preorder ejárás Fa bejárásán olyan algoritmust értünk, amelynek bemenete egy F fa és egy M művelet, és az algoritmus adott sorrendben pontosan egyszer végrehajtja az M műveletet a fa pontjaiban lévő adatokra.

Részletesebben

Előző óra összefoglalása. Programozás alapjai C nyelv 3. gyakorlat. Karakter típus (char) Karakter konstansok. Karaktersorozatot lezáró nulla

Előző óra összefoglalása. Programozás alapjai C nyelv 3. gyakorlat. Karakter típus (char) Karakter konstansok. Karaktersorozatot lezáró nulla Programozás alapja C yelv 3. gyakorlat Szeberéy Imre BME IIT Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -- Előző óra összefoglalása Algortmus leírása Sztaxs leírása

Részletesebben

Érdekes informatika feladatok

Érdekes informatika feladatok K. L. Érdekes informatika feladatok XXVIII. rész A konvex burkoló (burok) Legyen S a Z sík egy ponthalmaza. S konvex, ha tetszőleges A, B S-beli pont esetén az AB szakasz is S-be esik. Legyen S a Z sík

Részletesebben

3. SOROZATOK. ( n N) a n+1 < a n. Egy sorozatot (szigorúan) monotonnak mondunk, ha (szigorúan) monoton növekvő vagy csökkenő.

3. SOROZATOK. ( n N) a n+1 < a n. Egy sorozatot (szigorúan) monotonnak mondunk, ha (szigorúan) monoton növekvő vagy csökkenő. 3. SOROZATOK 3. Sorozatok korlátossága, mootoitása, kovergeciája Defiíció. Egy f : N R függvéyt valós szám)sorozatak evezük. Ha A egy adott halmaz és f : N A, akkor f-et A-beli értékű) sorozatak evezzük.

Részletesebben

7. Dinamikus programozás

7. Dinamikus programozás 7. Diamikus rogramozás 7.1. Rekurzió memorizálással. Láttuk, hogy a artíció robléma rekurzív algoritmusa Ω(2 ) eljáráshívást végez. edig a lehetséges részroblémák száma csak 2 (vagy ( + 1)/2, ha csak az

Részletesebben

Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.

Tartalom 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észletesebben

Debreceni Egyetem, Közgazdaság- és Gazdaságtudományi Kar. Feladatok a Gazdasági matematika I. tárgy gyakorlataihoz. Halmazelmélet

Debreceni Egyetem, Közgazdaság- és Gazdaságtudományi Kar. Feladatok a Gazdasági matematika I. tárgy gyakorlataihoz. Halmazelmélet Debrecei Egyetem Közgazdaság- és Gazdaságtudomáyi Kar Feladatok a Gazdasági matematika I. tárgy gyakorlataihoz a megoldásra feltétleül ajálott feladatokat jelöli e feladatokat a félév végére megoldottak

Részletesebben

Rendezettminta-fa [2] [2]

Rendezettminta-fa [2] [2] Rendezettminta-fa Minden p ponthoz tároljuk a p gyökerű fa belső pontjainak számát (méretét) Adott elem rangja: az elem sorszáma (sorrendben hányadik az adatszekezetben) Adott rangú elem keresése - T[r]

Részletesebben

Neumann János Tehetséggondozó Program Gráfalgoritmusok II.

Neumann János Tehetséggondozó Program Gráfalgoritmusok II. Neumann János Tehetséggondozó Program Gráfalgoritmusok II. Horváth Gyula horvath@inf.elte.hu 1. A szélességi bejárás alkalmazásai. Nyilvánvaló, hogy S(0) = {r}. Jelölés: D(p) = δ(r, p) Nyilvánvaló, hogy

Részletesebben

Matematika I. 9. előadás

Matematika I. 9. előadás Matematika I. 9. előadás Valós számsorozat kovergeciája +-hez ill. --hez divergáló sorozatok A határérték és a műveletek kapcsolata Valós számsorozatok mootoitása, korlátossága Komplex számsorozatok kovergeciája

Részletesebben

Feladatok és megoldások a 11. heti gyakorlathoz

Feladatok és megoldások a 11. heti gyakorlathoz Feladatok és megoldások a. het gyakorlathoz dszkrét várható érték Építőkar Matematka A. Egy verseye öt ő és öt férf verseyző dul. Tegyük fel, hogy cs két azoos eredméy, és md a 0! sorred egyformá valószíű.

Részletesebben

Kvantum párhuzamosság Deutsch algoritmus Deutsch-Jozsa algoritmus

Kvantum párhuzamosság Deutsch algoritmus Deutsch-Jozsa algoritmus LOGO Kvatum párhuzamosság Deutsch algoritmus Deutsch-Jozsa algoritmus Gyögyösi László BME Villamosméröki és Iormatikai Kar Bevezető Kvatum párhuzamosság Bármilye biáris üggvéyre, ahol { } { } : 0, 0,,

Részletesebben

Statisztika. Eloszlásjellemzők

Statisztika. Eloszlásjellemzők Statsztka Eloszlásjellemzők Statsztka adatok elemzése A sokaság jellemzése középértékekkel A sokaság jellemzéséek szempotja A sokaság jellemzéséek szempotja: A sokaság tpkus értékéek meghatározása. Az

Részletesebben

FELADATOK A KALKULUS C. TÁRGYHOZ

FELADATOK A KALKULUS C. TÁRGYHOZ FELADATOK A KALKULUS C. TÁRGYHOZ. HALMAZOK RELÁCIÓK FÜGGVÉNYEK. Bizoyítsuk be a halmaz-műveletek alapazoosságait! 2. Legye adott az X halmaz legye A B C X. Ha A B := (A B) (B A) akkor bizoyítsuk be hogy

Részletesebben

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 8. előadás (Horváth Gyula anyagai felhasználásával) Kereső- és rendezőfák Közös tulajdonságok: A gyökérelem (vagy kulcsértéke) nagyobb vagy egyenlő minden tőle balra levő elemnél. A

Részletesebben

1. Jelölje meg az összes igaz állítást a következők közül!

1. Jelölje meg az összes igaz állítást a következők közül! 1. Jelölje meg az összes igaz állítást a következők közül! a) A while ciklusban a feltétel teljesülése esetén végrehajtódik a ciklusmag. b) A do while ciklusban a ciklusmag után egy kilépési feltétel van.

Részletesebben

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010 Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 Előadás tematika 1. Pascal ismétlés, kiegészítések 2. Objektum orientált programozás (OOP) 3. Delphi környezet 4. Komponensek bemutatása

Részletesebben

ÖNSZERVEZŐ BINÁRIS KERESŐFÁK HATÉKONYSÁGA

ÖNSZERVEZŐ BINÁRIS KERESŐFÁK HATÉKONYSÁGA ÖNSZERVEZŐ BINÁRIS KERESŐFÁK HATÉKONYSÁGA Tétel: Ha a halmazok ábrázolására önszervező bináris keresőfát használunk, akkor minden α 1,...,α m műveletsor, ahol i {1..m}: α i {keres;bovit;torol;vag;egyesit}

Részletesebben

Sorozatok A.: Sorozatok általában

Sorozatok A.: Sorozatok általában 200 /2002..o. Fakt. Bp. Sorozatok A.: Sorozatok általába tam_soroz_a_sorozatok_altalaba.doc Sorozatok A.: Sorozatok általába Ad I. 2) Z/IV//a-e, g-m (CD II/IV/ Próbálj meg róluk miél többet elmodai. 2/a,

Részletesebben

Táblázatok fontosabb műveletei 1

Táblázatok fontosabb műveletei 1 Táblázatok fontosabb műveletei 1 - - Soros táblázat procedure BESZÚR1(TÁBLA, újelem) - - beszúrás soros táblázatba - - a táblázatot egy rekordokat tartalmazó dinamikus vektorral reprezentáljuk - - a rekordok

Részletesebben

Megoldott feladatok. Informatika

Megoldott feladatok. Informatika Megoldott feladatok Informatika I.81. Egy autóbuszjegyen az n*n-es négyzethálóban összesen k lyukasztás lehet. Ha a buszjegyet fordítva helyezzük a lyukasztóba, akkor a jegy tükörképét kapjuk. (Csak egyféleképpen

Részletesebben

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime? Ugrólisták Ugrólisták Ugrólisták Ugrólisták RSL Insert Example insert(22) with 3 flips 13 8 29 20 10 23 19 11 2 13 22 8 29 20 10 23 19 11 2 Runtime? Ugrólisták Empirical analysis http://www.inf.u-szeged.hu/~tnemeth/alga2/eloadasok/skiplists.pdf

Részletesebben

Valószínűségszámítás összefoglaló

Valószínűségszámítás összefoglaló Vlószíűségszámítás összefoglló I. Feezet ombtor ermutácó Ismétlés élül ülöböző elem lehetséges sorrede! b Ismétléses em feltétleül ülöböző elem összes ülöböző sorrede!... hol z zoos eleme gyorság!!...!

Részletesebben

Algoritmusok és adatszerkezetek II.

Algoritmusok és adatszerkezetek II. Algoritmusok és adatszerkezetek II. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 6. Ugrólista (Skiplist) Definíció. Olyan adatszerkezet, amelyre

Részletesebben

Algoritmusok és adatszerkezetek II.

Algoritmusok és adatszerkezetek II. Algoritmusok és adatszerkezetek II. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 5. Vágható-egyesíthető Halmaz adattípus megvalósítása önszervező

Részletesebben

A statisztikai vizsgálat tárgyát képező egyedek összességét statisztikai sokaságnak nevezzük.

A statisztikai vizsgálat tárgyát képező egyedek összességét statisztikai sokaságnak nevezzük. Statisztikai módszerek. BMEGEVGAT01 Készítette: Halász Gábor Budapesti Műszaki és Gazdaságtudomáyi Egyetem Gépészméröki Kar Hidrodiamikai Redszerek Taszék 1111, Budapest, Műegyetem rkp. 3. D ép. 334. Tel:

Részletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 7. Gráfalgoritmusok II. 7.1. Feladat: Útcaseprő A város utcáinak takarítását úgy szervezték

Részletesebben

Haladó rendezések. PPT 2007/2008 tavasz.

Haladó rendezések. PPT 2007/2008 tavasz. Haladó rendezések szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Alapvető összehasonlító rendezések Shell rendezés Kupacrendezés Leszámláló rendezés Radix rendezés Edényrendezés

Részletesebben

FELADATOK a Bevezetés a matematikába I tárgyhoz

FELADATOK a Bevezetés a matematikába I tárgyhoz FELADATOK a Bevezetés a matematiába I tárgyhoz a számítástechia taár főisolai és a programozó matematius szao számára 2004 ovember 4 FIGYELEM: a számtech szaosoa csa a övetező feladato ellee: 2,6,7,8,9-13,16-25,27,31-33

Részletesebben

Függvénygörbe alatti terület a határozott integrál

Függvénygörbe alatti terület a határozott integrál Függvéygörbe alatt terület a határozott tegrál Tektsük az üggvéyt a ; tervallumo. Adjuk becslést a görbe az tegely és az egyees között síkdom területére! Jelöljük ezt a területet I-vel! A becslést legegyszerűbbe

Részletesebben

7. 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. 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észletesebben

Backtrack módszer (1.49)

Backtrack módszer (1.49) Backtrack módszer A backtrack módszer kombatorkus programozás eljárás, mely emleárs függvéy mmumát keres feltételek mellett, szsztematkus kereséssel. A módszer előye, hogy csak dszkrét változókat kezel,

Részletesebben

Algoritmusok helyességének bizonyítása. A Floyd-módszer

Algoritmusok helyességének bizonyítása. A Floyd-módszer Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk

Részletesebben

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 7. előadás (Horváth Gyula anyagai felhasználásával) Bináris fa A fa (bináris fa) rekurzív adatszerkezet: BinFa:= Fa := ÜresFa Rekord(Elem,BinFa,BinFa) ÜresFa Rekord(Elem,Fák) 2/37 Bináris

Részletesebben

7. Strukturált típusok

7. Strukturált típusok 7. Strukturált típusok 1. Mintafeladat a különböző tömbtípusok konstanssal való feltöltésére és kiíratására! (minta7_1) program minta7_1; fejlec:array[1..8] of char = 'Eredmény'; adatok:array[1..4] of

Részletesebben

Egyszerű algoritmusok

Egyszerű algoritmusok Egyszerű algortmusok Tartalomjegyzék Összegzés...2 Maxmum kválasztás...3 Mnmum kválasztás...4 Megszámlálás...5 Eldöntés...6 Eldöntés - wle...8 Lneárs keresés...10 Készítette: Gál Tamás Creatve Commons

Részletesebben

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,

Részletesebben

10. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 28.

10. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 28. 10. tétel Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 28. 2-3 fák Hatékony keresőfa-konstrukció. Ez is fa, de a binárisnál annyival bonyolultabb hogy egy nem-levél csúcsnak 2 vagy 3 fia

Részletesebben

n akkor az n elem összes ismétléses ... k l k 3 k 1! k 2!... k l!

n akkor az n elem összes ismétléses ... k l k 3 k 1! k 2!... k l! KOMBINATORIKAI ALAPFOGALMAK A ombiatoria általába a véges halmazora voatozó redezési és leszámlálási feladatoal foglalozi. Az elemi ombiatoria legtöbb esetbe a övetező ét érdés egyiére eresi a választ:

Részletesebben

Kupacrendezé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.

Kupacrendezé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észletesebben

A Secretary problem. Optimális választás megtalálása.

A Secretary problem. Optimális választás megtalálása. A Secretary problem. Optmáls választás megtalálása. A Szdbád problémáa va egy szté lasszusa tethető talá természetesebb vszot ehezebb változata. Ez a övetező Secretary problem -a evezett érdés: Egy állásra

Részletesebben

Dr. Schuster György február / 32

Dr. 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észletesebben

file:///d:/okt/ad/jegyzet/ad1/b+fa.html

file:///d:/okt/ad/jegyzet/ad1/b+fa.html 1 / 5 2016. 11. 30. 12:58 B+ fák CSci 340: Database & Web systems Home Syllabus Readings Assignments Tests Links Computer Science Hendrix College Az alábbiakban Dr. Carl Burch B+-trees című Internetes

Részletesebben

Adatszerkezetek és algoritmusok

Adatszerkezetek és algoritmusok 2010. január 8. Bevezet El z órák anyagainak áttekintése Ismétlés Adatszerkezetek osztályozása Sor, Verem, Lengyelforma Statikus, tömbös reprezentáció Dinamikus, láncolt reprezentáció Láncolt lista Lassú

Részletesebben

8. Programozási tételek felsoroló típusokra

8. 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észletesebben

KOMBINATORIKA ELŐADÁS osztatlan matematikatanár hallgatók számára. Szita formula J = S \R,

KOMBINATORIKA ELŐADÁS osztatlan matematikatanár hallgatók számára. Szita formula J = S \R, KOMBINATORIKA ELŐADÁS osztatla matematkataár hallgatók számára Szta formula Előadó: Hajal Péter 2018 1. Bevezető példák 1. Feladat. Háy olya sorbaállítása va a {a,b,c,d,e} halmazak, amelybe a és b em kerül

Részletesebben

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

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 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észletesebben

Amortizációs költségelemzés

Amortizációs költségelemzés Amortizációs költségelemzés Amennyiben műveleteknek egy M 1,...,M m sorozatának a futási idejét akarjuk meghatározni, akkor egy lehetőség, hogy külön-külön minden egyes művelet futási idejét kifejezzük

Részletesebben

16. Az AVL-fa. (Adelszon-Velszkij és Landisz, 1962) Definíció: t kiegyensúlyozott (AVL-tulajdonságú) t minden x csúcsára: Pl.:

16. Az AVL-fa. (Adelszon-Velszkij és Landisz, 1962) Definíció: t kiegyensúlyozott (AVL-tulajdonságú) t minden x csúcsára: Pl.: 6. Az AVL-fa Adelszo-Velszkij és Ladisz, 96 Defiíció: t kiegyesúlyozott AVL-tulajdoságú t mide x csúcsára: bal x jobb x. Pl.: A majdem teljes biáris fa AVLtulajdoságú. Az AVL-fára, mit speciális alakú

Részletesebben

Megoldás meghatározása Ez a szakasz kitölti a c és S táblázatokat, a kiíratás S alapján egy rekurzív algoritmussal megtehető.

Megoldás meghatározása Ez a szakasz kitölti a c és S táblázatokat, a kiíratás S alapján egy rekurzív algoritmussal megtehető. Leghosszabb közös részsorozat Egy sorozat, akkor részsorozata egy másiknak, ha abból elemeinek elhagyásával megkapható. A feladat két sorozat X = (x 1,...,x m ) és Y = (y 1,...,y n ) leghosszabb közös

Részletesebben

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése Fájlszervezés Adatbázisok tervezése, megvalósítása és menedzselése Célok: gyors lekérdezés, gyors adatmódosítás, minél kisebb tárolási terület. Kezdetek Nincs általánosan legjobb optimalizáció. Az egyik

Részletesebben

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás.  Szénási Sándor. B-fa Felépítés, alapvető műveletek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar B-fa Felépítése Beszúrás művelete Törlés

Részletesebben

A peremeloszlások. Valószínőségszámítás elıadás III. alk. matematikus szak. Példa. Valószínőségi vektorváltozók eloszlásfüggvénye.

A peremeloszlások. Valószínőségszámítás elıadás III. alk. matematikus szak. Példa. Valószínőségi vektorváltozók eloszlásfüggvénye. y Valószíőségszámítás elıaás III. alk. matematkus szak 4. elıaás, szeptember 30 A peremeloszlások (X,Y) eloszlásából (elevezés: együttes eloszlás) következtethetük az egyes változók eloszlására: P(X)P(X,Y0)+P(X,Y)+P(X,Y2)

Részletesebben

Példa 30 14, 22 55,

Példa 30 14, 22 55, Piros-Fekete fák 0 Példa 14, 22 55, 77 0 14 55 22 77 Piros-Fekete fák A piros-fekete fa olyan bináris keresőfa, amelynek minden pontja egy extra bit információt tartalmaz, ez a pont színe, amelynek értékei:

Részletesebben

Hiba! Nincs ilyen stílusú szöveg a dokumentumban.-86. ábra: A példa-feladat kódolási változatai

Hiba! Nincs ilyen stílusú szöveg a dokumentumban.-86. ábra: A példa-feladat kódolási változatai közzétéve a szerző egedélyével) Öfüggő szekuder-változó csoport keresése: egy bevezető példa Ez a módszer az állapothalmazo értelmezett partíció-párok elméleté alapul. E helye em lehet céluk az elmélet

Részletesebben

Algoritmizálás és adatmodellezés tanítása 1. előadás

Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az

Részletesebben