Uversdde Federl de Ms Gers Deprtmeto de Cê d Computção Algortmos e Estruturs de Ddos II ª Lst de Exeríos - GABARIO Est lst deverá ser etregue pr os professores durte ul do d de setembro de 0. Não serão reebds lsts por e-ml. odos os progrms devem ser fetos em C.. São ddos úmeros dsttos dstrbuídos em dos vetores om elemetos A e B ordedos de mer tl que: A[] > A[] > A[] >... > A[] e B[] > B[] > B[] >... > B[] Apresete um lgortmo ler pr eotrr o -ésmo mor úmero detre estes elemetos. Pr eotrr o mor elemeto, bst omprr o elemeto A[] om B[], o mor será o mor elemeto do ojuto. Pr eotrr o segudo mor elemeto, bst omprr o elemeto A[] om B[]. Se o A[] for o mor, bst ompr o A[] om o B[], seão serão omprdos os elemetos A[] om B[]. Neste so, serão eessárs omprções. Pr eotrr o -ésmo mor elemeto, bst relzr omprções.. Cosdere o problem de eotrr posção de serção de um ovo elemeto em um ojuto ordedo: A[] > A[] > A[] >... > A[] Apresete stução e/ou etrd de ddos em que oorre o melhor so e o por so. b Apresete um lgortmo pr resolver o problem m. Resolução trvés de bus bár. Exstem + lugres possíves pr serr este ovo elemeto. Melhor so: elemeto será serdo pós o elemeto que está posção /. Por so: elemeto será serdo posção ou +. Pr serr um ovo elemeto serão eessárs, o por so log + omprções.. Cosdere fução bxo: t Xt { f <=0 the retur 0; else retur + X-; O que ess fução fz? b Clule su ordem de omplexdde. Mostre omo voê hegou esse resultdo. Esrev um fução ão-reursv que resolve o mesmo problem. Qul é ordem de omplexdde d su fução? Explque. d Qul mplemetção é ms efete? Justfque.
Clul o somtóro de 0 té b Equção de reorrê: = + -, p/ > 0 = d p/ = 0 = O A mplemetção ão reursv tmbém ser O. Nesse so, pesr ds omplexddes serem s mesms, fução ão reursv é preferd por ser smples de mplemetr e ão eesstr de múltpls hmds de fução eoom de memór e tempo. 4. Cosdere que multplção de mtrzes é O. Se voê tvesse opção de utlzr um lgortmo expoel O pr multplr dus mtrzes, qul lgortmo voê r preferr? Justfque. Se voê tvesse opção de utlzr um lgortmo expoel O pr multplr dus mtrzes, ele só vler pe pr < 0. A prtr dí, o lgortmo expoel tor-se ms ro que o lgortmo O. 5. O Csmeto de Pdrões é um problem lásso em Cê d Computção e é pldo em áres dverss omo pesqus geét, edtorção de textos, buss teret, et. Bsmete, ele osste em eotrr s oorrês de um pdrão P de tmho m em um texto de tmho. Por exemplo, o texto = BELO HORIZONE o pdrão P = ORI é eotrdo posção 6 equto o pdrão P = ORA ão é eotrdo. O lgortmo ms smples pr o smeto de pdrões é o lgortmo d Forç Brut, mostrdo bxo. Alse esse lgortmo e respod: qul é fução de omplexdde do úmero de omprções de rteres efetuds o melhor so e o por so. Dê exemplos de etrds que levm esses dos sos. Explque su respost! typedef hr poexto[mxexto]; typedef hr popdro[mxpdro]; vod ForBrut poexto, t, popdro P, t m //-- Pesqus o pdro P[0..m-] o texto [0..-] -- { t, j, ; for = 0; < ; ++ { = ; j = 0; whle j < m && [] == P[j] { ++; j++; f j == m { prtf"csmeto poso %d\", ; bre; // s do for
Melhor Cso: pdrão eotrdo prmer posção. O for v ser exeutdo vez e o whle m vezes. Portto, o úmero de omprções v ser Om. Exemplo: : Prov de AEDSII P: Pro Por so: um seqüê de rteres quse gul o pdrão se repete o texto, om ú dfereç sedo o últmo rtere. Dess form, o whle será exeutdo m vezes pr d terção do for, que será exeutdo -m+ vezes. Portto, o úmero de omprções será -m+.m Por so: Om. Exemplo: : P: b 6. Város lgortmos em omputção usm té de Dvdr pr Coqustr : bsmete eles fzem lgum operção sobre todos os ddos, e depos dvdem o problem em sub-problems meores, repetdo operção. Um equção de reorrê típ pr esse tpo de lgortmo é mostrd bxo. Resolv ess equção de reorrê. = / + ; = ; O.log 7. Idque pr d pr de expressões A,B tbel bxo, se A é O, o,, ou de B. Assum que e 0 < < < são osttes. Su respost deve ser d form SIM ou NÃO. Not: log log log e!. e A B O o log S S N N N S S N N N N N S S N v log! log S N S N S v log log S S N N N v S N S N S 8. Qul lgortmo voê preferr: um que requer 5 pssos ou um que requer pssos? Justfque su respost. Depede do tmho do problem. eremos 5 > pr <, portto é melhor ; pr >=, 5 é melhor. No lmte, um omplexdde poloml é melhor que um omplexdde expoel pr problems grdes.
9. Idque se s frmtvs segur são verdders e justfque su respost: + = O Verdder: exstem osttes postvs e m ts que + <= pr todo >= m; exemplo: = e m = 0. b = O Fls: = 4, e portto ão exstem osttes postvs e m que tedm à defção este so. f = Ou e g = Ov f + g = Ou + v Verdder: prmer prte, exstem osttes postvs e m ts que f <=.u pr >= m e g <=.v pr >= m. Portto, f + g <= u + v pr = mx, e m = mxm, m. Ess osttção equvle osderr omo omplexdde o máxmo ds dus fuções. d f = Ou e g = Ov f g = Ou v Fls: se f g = Ou Ov = Ou+-Ov; omo - é um ostte, el pode ser desosderd, de ordo om s propreddes d otção O. Portto, f g = Ou + Ov = Omxu, v. Observe que otção O orrespode à relção de meor que ou gul <=, que é lterd pel subtrção e pel dvsão. 0. Cosderdo que operção relevte é o úmero de vezes que operção som é exeutd, presete fução de omplexdde de tempo pr: for to do for j to do for to do temp temp + + j + j... b for to do for j to do for to j do temp temp + + j + j... j
for to do for j to do for to do temp temp + + j + j... d for to do for j to do for to do temp temp + + j + j... e for to do for j to do for to j do temp temp + + j + j j.... Resolv s segutes equções de reorrê: = + ostte, > = 0 b = + 0 = =, osttes, > 0 0 = d = / + > = log
e = > 0 = 0 =. Cosdere o lgortmo segur, supodo que operção rul é speor elemeto. O lgortmo speo os elemetos de um ojuto e, de lgum form, osegue desrtr /5 dos elemetos e fzer um hmd reursv sobre os /5 elemetos resttes. Esrev um equção de reorrê que desrev esse omportmeto b Covert equção de reorrê pr um somtóro Dê fórmul fehd pr esse somtóro vod Pesqus t { f < speoe elemeto ; terme; else { pr d um dos elemetos, speoe elemeto ; Pesqus * / 5; 5 5. orre de Hó. Em 88, o mtemáto frês Edourd Lus rou um jogo hmdo orre de Hó. O jogo omeç om um ojuto de oto dsos emplhdos em tmho deresete em um ds três vrets, oforme mostrdo Fgur. O objetvo do jogo é trsferr tod torre pr um ds outrs vrets, movedo um dso de d vez, ms u movedo um dso mor sobre um meor. Fgur : Cofgurção l d orre de Hó.
4. Lhs o plo ou Cortdo su pzz fvort. Quts fts de pzz um pesso pode obter o fzer ortes retos om um f? Ou, expressdo de outr form, qul é o úmero máxmo de regões L determdo por rets o plo? Lembre-se que um plo sem ehum ret tem um regão, om um ret tem dus regões e om dus rets tem qutro regões, oforme mostrdo fgur. Fgur : Regões o plo. 0 5. Use o teorem mestre pr dervr um lmte sstóto pr s segutes reorrês: = / + log b = / + log = 4/ + log d = 4/ + Fórmuls Útes: 0.. 4 L 0 = L = L =4