• Welcome to TUKE FÓRUM - FĂłrum pre ĆĄtudentov Technickej Univerzity v KoĆĄiciach.
 

UĆ aA

Started by Wolfdale, 24.09.2011, 05:08:29

« predchádzajúce - ïalčie »

Don_Corleone

mam to tiez nejak tak ze mi to vypise strom .. v podstate to vypise najprv 1 prvok stromu potom 2 , 4 , 8 cize vypisujem stale 2 4 8 prvkov a vzdy vynasobim prvy index z lava 2 cize sa dostanem o jednu uroven nizsie ...

cize zadam index 5 ... vypise 5 vynasobi 2 - 10 ..vypise v cykle vypise dva prvky 10,11 ... znova 10 vynasobi 2 ... 20 - vypise 4 prvky 20,21,22,23  atd .. a detaily k tomu treba ostertrit ... podla mna to nie je moc efektivne ale je to funkcne ... :D

Cici

ja to mam uplne presne tak ako Boris pise - neefektivne ale funkcne :D

xxx3

a nedas to sem prosim ? ... alebo aspon do PM ... tiez to takto skusam ale stale mi vyhodi, ze program prestal pracovat :D

Cici

nedam - svoje zrdojaky zo zadani nedavam.

ale riesim to tak ze najprv vypocitam v ktorej urovni je dany prvok ktorym zacinas. Nasledne vypisuje prvky. Pocet vypisanych prvkov sa po kezdej urovni zvysi dvojnasobne. Pociatocny prvok ktory sa vypisuje je vypocitany ako dvojnasobok prveho prvku o uroven vyssie.

xxx3

ako zistis v ktorej urovni si ?

Cici

int n = 0;

do n++; while ( k >= pow(2,n));

/k je hodnota prvku v strome

bEnd3r

ja to mam vyriesene tak, ze funkcia printSubtree(T,index) vypise prvok, ktory sa nachadza na pozicii index, a potom ak je index*2 mensi ako 2^maxlevel tak zavola printSubtree(T,index*2) a printSubtree(T,(index*2)+1)

Cici

pekny napad pouzit rekurziu. Ako ale riesis vypis - aby vkladalo potrebne mnozstvo medzier.

xxx3

aha, toto je dobre riesenie a ovela efektivnejsie, diky .. medzery je najmensi problem, nema to totiz vypisovat ako strom ale staci do riadku

bEnd3r

medzery nemusis vkladat, takto by to malo vyzerat

felipe

to bEnd3r:
ja to mam riesene tak isto ako ty, s rozdielom ze sa pytam ci lavy a pravy syn niesu NULL, funguje ti to dobre aj ked zadas vrchol 2? lebo jak ked tam dam 2  tak mi vypise 02 04 08 09 134993 05 10 11, a ked tam zadam 3 tak je to vpohode...

xxx3

to co dal bender ide dobre aj ked zadas vrchol 2

xxx3

to dfsst mate niekto ? ak ano ako ste to robili ?

Cici

tak isto ako dfs akurat vypis je iny :D

xxx3

#314
hej uz to mam ... ale vypisuje mi to skaredo, nie tak pekne ze (0, 1)(1, 2)(2, 3)  ale vselijak poprehadzovane ... mas to tak, ze ti to takto pekne za sebou vypisuje, ze tam kde predchadzajuca zatvorka konci tam zacina nasledujuca pri tom uzle?
.. tak uz to mam pekne zasebou ale odzadu :D

bEnd3r

nebabri sa s tym tolko, skopirujes cele dfs a dfsr, upravis tam 5 veci a hotovo

xxx3

ja som len skopiroval tie dfs a dfsr, zmenil som nazvy, zmazal ten printf co tam bol a napisal som iny printf na ine miesto a ide to

bEnd3r

presne tak.. to je tych 5 zmien :D 4x zmena nazvu, upravit printf :D

xxx3


kmsa

chybu som nasiel ze tam to zbytocne cykli samo na seba ale nechapem co ma ten dfsr robyt okrem toho ze vypise
najlepsie ekby tam ta podmienka nebola ale by uz nemala ta funkciu uplne nahovno vyznam

Shwollo

akĂĄ bola pĂ­somka?
nepĂ­ĆĄte mi SS - radĆĄej mi pĂ­ĆĄte mail. (tĂĄ obĂĄlka pod mojim avatarom :)))

esperian

previerka sa pĂ­ĆĄe aĆŸ v 7 tĂœĆŸdni ak dobre viem

Shwollo

 ??? tak prečo sa mi zdĂĄ, ĆŸe Slodičák v piatok rozprĂĄval niečo, ĆŸe bude tento?  ???
ale na moodle je 7. tĂœĆŸdeƈ. TakĆŸe som sa stresoval zbytočne :D
nepĂ­ĆĄte mi SS - radĆĄej mi pĂ­ĆĄte mail. (tĂĄ obĂĄlka pod mojim avatarom :)))

visvk

hm, co vlastne robi do dfssrt? ide mi to, ale nechapem preco mi to nefunguje pri nejakych inych pripadoch
napr pri matici 3x3
0 1 0
0 0 0
1 0 0 mi vypise iba (0,1). Nemalo by vypisat este aj (2,0)? asi mam zle kod. Aj ked som ho robil podla toho navodu vyssie

Cici

Quote from: visvk on  26.10.2011, 20:58:00
hm, co vlastne robi do dfssrt? ide mi to, ale nechapem preco mi to nefunguje pri nejakych inych pripadoch
napr pri matici 3x3
0 1 0
0 0 0
1 0 0 mi vypise iba (0,1). Nemalo by vypisat este aj (2,0)? asi mam zle kod. Aj ked som ho robil podla toho navodu vyssie
ak som tomu spravne pochopil tak ano ma to tak vypisat