You are on page 1of 28

Bi tp Cu trc d liu v gii thut

Trang 1

Ch ng 1 Tng quan v cu trc d liu v gii thut


Vit chng trnh hon chnh cho cc bi ton sau y n tp cc kiu d liu c cu trc hc BT1-1. Cho n s nguyn dng a0,a1,a2,...,an-1. a.Chn phn t x vo v tr k ca dy. b.Xa tt c cc s nguyn t trong dy. c.Kim tra dy c tng dn hay khng ? d.Tm s nh nht chia ht cho tt c cc s ca dy. e.Tm cc cp s nguyn t cng nhau (hai s nguyn dng c gi l nguyn t cng nhau nu c s chung ln nht ca chng bng 1). f.Tm tn s xut hin ca cc s trong dy. BT1-2. Cho ma trn vung n dng v n ct; cc phn t l cc s nguyn (0 n < 100). Vit cc hm thc hin cc yu cu sau: a.Tnh tng tt c cc phn t ca ma trn. b.Tm gi tr dng nh nht ca ma trn. c.Tnh tng cc phn t nm trn ng cho ph. d.Kim tra xem cc phn t nm trn ung cho chnh c tng dn hay khng ? (theo chiu t gc trn bn tri xung gc di bn phi). BT1-3. Cho ma trn vung n dng n ct; mi phn t ca ma trn l mt phn s (gi thit rng t s v mu s ca cc phn s ny l cc s nguyn). Hy thc hin cc yu cu sau: a.Tm phn s c gi tr nh nht nm trong khong.(0;1). b.m s lng phn s nm trong ma trn tam gic trn c gi tr nm trong khong (0,1) c.Sp xp cc phn s trong ma trn tng dn t tri qua phi v t trn xung di. BT1-4. Vit chng trnh nhp vo chui k t s. Hy thc hin cc yu cu sau: a.Cho bit s lng k t ca mi t.

Bi tp Cu trc d liu v gii thut

Trang 2

b.Tm tn s xut hin ca cc k t trong chui s (khng k k t khong trng). c.m xem chui s c bao nhiu t ? d.Xa n k t trong chui k t v tr th k. e.Nhp thm chui s1, hy chn s1 vo v tr th k ca s. f.Loi b cc khong trng d tha trong chui BT1-5. Cho mt danh sch lu tr thng tin v cc nhn vin trong mt cng ty, thng tin gm : - M nhn vin (chui, ti a l 8 k t) - H v tn (chui, ti a l 20 k t) - Nm sinh (s nguyn) - Phng ban (chui, ti a 10 k t) - Lng c bn (s nguyn) - Thng (s nguyn) - Thc lnh (s nguyn, trong thc lnh = lng c bn + thng ) Hy thc hin cc yu cu sau: a.Tnh tng thc lnh thng ca tt c nhn vin trong cng ty. b.In danh sch nhng nhn vin c mc lng c bn thp nht. c.m s lng nhn vin c mc thng >= 1200000. d.In danh sch cc nhn vin tng dn theo phng ban, nu phng ban trng nhau th gim dn theo m nhn vin. e.Cp nht tng lng ca tt c cc nhn vin ln 5% BT1-6.Vit chng trnh to mt tp tin vn bn c tn l DAYSO.INP c cu trc nh sau: -Dng u tin ghi n (n l s nguyn dng nhp t bn phm). -Trong cc dng tip theo ghi n s nguyn ngu nhin trong phm vi t 1 n 10000, mi dng 10 s (cc s cch nhau t nht mt du cch). Hy thc hin cc cng vic sau y: a.Tm gi tr ln nht ca cc s trong tp tin DAYSO.INP. b.m s lng s chn, s lng s l trong tp tin DAYSO.INP. c.Hy m s lng s nguyn t, s chnh phng, s hon ho, s Amstrong trong tp tin DAYSO.INP.

Bi tp Cu trc d liu v gii thut

Trang 3

Hy ghi kt qu ca cc cu a,b,c trn vo tp tin vn bn c tn l DAYSO.OUT. BT1-7.Vit chng trnh to tp tin vn bn c tn l BANGSO.INP c cu trc nh sau: -Dng u tin ghi hai s m v n (m, n l cc s nguyn dng nhp t bn phm) -Trong m dng tip theo mi dng ghi n s nguyn ngu nhin trong phm vi t 0 n 1000 (cc s cch nhau t nht mt du cch) Hy thc hin cc cng vic sau: a.Hy cho bit ch s cc dng c cha s nguyn t (gi thit cc dng trong tp tin vn bn c nh s t 0 n m-1). b.Xoay vng cc ct qua phi mt v tr (ct 0 s qua ct 1, ct 1 qua ct 2,... ct n-1 v ct 0). c.Sp xp cc phn t tng dn trn tng ct. Hy ghi cc kt qu trn vo file vn bn c tn l BANGSO.OUT. BT1-8. Cho mng mt chiu gm n ta im (gi s honh v tung ca cc im l cc s nguyn). a.Hy tm mt im trong mng xa gc ta nht. b.Hy tm ta hai im gn nhau nht. c.Hy xc nh ta ca hnh ch nht nh nht bao ht c n im trn (ta gc trn bn tri v ta gc di bn phi ca hnh ch nht). V d n = 5 v ta 5 im l: (0,0); (0,3); (3,3); (4,1); (4,4). Th kt qu cu a l im (4,4), kt qu cu b l (3,3) v (4,4), kt qu cu c l (0,4); 4(,0). Chn la mt cu trc d liu thch hp/ phc tp tnh ton BT1-9.Cho dy n s nguyn a0,a1,...,an-1. Hy chuyn k phn t u tin ca dy v cui dy. BT1-10.Gi s n 1 v x l s thc. Hy vit hm tnh gi tr ca biu thc sau y (vi phc tp tuyn tnh):
S (n, x) = x x2 x3 xn + ... + ( 1 ) n 1 1 1 1 1 1 1+ 1 + + ... + 1+ 1+ n 2 2 3 2

Bi tp Cu trc d liu v gii thut

Trang 4

BT1.11.Tm s hng th n ca dy Fibonasci (gii quyt khi n l mt s ln khi ta khng th s dng quy v cng khng th s dng mng lu tr). BT1-12.Cng hai s nguyn ln a v b, trong s a c m ch s v s b c n ch s. S nguyn ln y l s c th c n vi trm ch s. lu tr cc s nguyn ln ny ta c th dng chui (mi k t ca chui l mt ch s) hoc dng mng mt chiu (mi phn t ca mng mt chiu l mt ch s). Tuy nhin trong hai phng n ny th phng n dng mng mt chiu lu tr s c thut ton tt hn. Gi : Algorithms: Nhp m ch s ca s a, lu vo mng mt chiu a. Nhp n ch s ca s b, lu vo mng mt chiu b. Gi s ta c hai s a=97895 v b = 6478 i a[i] b[i] 0 9 6 1 7 4 2 8 7 3 9 8 4 5

Lu nu khi nhp m khng ging hng bn phi th kt qu s sai, ta c th tin hnh nhp hai s a,b theo cch sau khc phc tnh trng ny: t max l s ln nht trong hai gi tr m v n. Vic nhp hai s a ,b c tin hnh nh sau: for i=max-m+1;i<=max;i++ cin>>a[i]; for i=max-n+1;i<=max;i++ cin>>b[i]; Sau thc hin php cng nh cch thng thng: remember=0; for (i=max; i >=1;i--) { c[i]=(a[i]+b[i]+remember)%10; remember=(a[i]+b[i]+remember)/10; }

Bi tp Cu trc d liu v gii thut

Trang 5

c[0]=remember; mng c[i] chnh l tng ca hai s a v b. Lu l gi tr c[0] ny ch xut ra khi n khc 0. on chng trnh xut kt qu nh sau: if (c[0]!=0) cout<<c[0]; for (i=1;i<=max;i++) cout<<c[i];

D liu th: m =5; n = 4; a = 97895, b = 6478 Gi tr ca cc phn t ca hai mng a v b l: a[1] = 9, a[2]=7; b[2] = 6, a[3]=8; b[3]=4; a[4]=9. b[4]=7; a[5]=5. b[5]=8

BT1-13. Gi s n 0 v x l s thc.Hy tnh gi tr ca biu thc sau y. S(n,x) = 1 + Gi : Algorithms1: O(N2) float s=1; for (int i=1;i<=n;i++) s=s+pow(x,i)/giaithua(i);// giaithua(i) = i!=1.2.3.i phc tp theo cch ny l O(N2), tuy nhin chng trnh khng th thc hin c khi n ln; chng hn n =100 - do php tnh giai tha ca n khng th thc hin.. Algorithms2: O(N2) float s=1,p; for (int i=1; i<=n;i++) { p=1; for (int j=1; j<=i;j++)
x x2 x3 xn + + + ... + 1! 2! 3! n!

Bi tp Cu trc d liu v gii thut

Trang 6

p=p*x/j; s=s+p; } phc tp theo cch ny vn l l O(N2), tuy nhin chng trnh khng cn tnh giai tha ca n. Algorithms3: O(N) phc tp tuyn tnh float s=1,p=1; for (int i=1;i<=n;i++) { p=p*x/i; s=s+p; } BT1-14. Cho dy n s nguyn {ai, y gi s i=1..n} Dy con lin tip l dy m thnh phn ca n l cc thnh phn lin tip nhau trong {a}, ta gi tng ca dy con l tng tt c cc thnh phn ca n. Tm tng ln nht trong tt c cc tng ca cc dy con ca {a}. V d nu n = 7; 4 Gi : Sau y l mt s thut gii cho bi ton ny [4] Algorithms1: O(N3) Thut ton n gin nht c th vit ngay l: Xt tt c cc cp s nguyn L v U tha mn 1 L U n; i vi mi cp nh vy ta tnh tng ca dy con a[L..U] v so snh tng ny vi gi tr ln nht hin c: for (L=1;L<=n;L++) for (U=L;U<=n;U++) { sum=0; for (int I=L;I<=U;I++) sum=sum+a[I]; 5 6 4 2 3 -7 Th kt qu tng l 7.

Bi tp Cu trc d liu v gii thut

Trang 7

maxsofar=max(maxsofar,sum); } Chng trnh ny tuy d hiu, nhng n chy rt chm. Thut ton ny c phc tp l O(n3). Cc bn xem nu n=10000 th thi gian dnh cho thut ton ny l qu ln. Algorithms2:O(N2) Ta c th ci tin thut ton trn c thut ton vi phc tp l O(n2) bng cch s dng h thc : Tng a[L..U]= Tng a[L..U-1]+a[U] maxsofar=0; for (L=1;L<=n;L++) { sum=0; for (U=L;U<=n;U++) { sum=sum+a[U]; maxsofar=max(maxsofar,sum); } } Algorithms3:O(N) Tng ln nht trong dy con a[1..i] l tng ln nht trong dy con a[1..i-1] gi l maxsofar hoc tng ln nht trong tt c cc tng ca cc dy con kt thc ti i - gi l maxendinghere. Chng ta c nhn xt rng: Dy con ln nht kt thc ti i l dy con ln nht kt thc ti v tr i-1 c b sung thm phn t a[i] cui hoc l dy con rng trong trng hp tng ca dy con nhn c l s m. Ta c thut ton nh sau: maxsofar=0; maxendinghere=0; for (i=1; i<=n;i++) { maxendinghere=max(maxendinghere+a[i],0); maxsofar=max(maxsofar,maxendinghere);

Bi tp Cu trc d liu v gii thut

Trang 8

} Minh ha cho thut ton ny nh sau: i A[i] maxendinghere maxsofar no nhanh hn th. BT1-15.Cho dy n s nguyn a0,a1,...,an-1.Hy tm dy con lin tip tng di nht. BT1-16.Cho dy n s nguyn a0,a1,...,an-1.Hy tm on con di nht cha ton s 0. BT1-17.Cho dy n s nguyn a0,a1,...,an-1.Hy tm dy con tng cha nhiu s nguyn t nht. BT1-18.Thc hin php tr hai s nguyn ln. BT1-19.Thc hin php nhn hai s nguyn ln. BT1-20.Thc hin php chia hai s nguyn ln. 1 4 4 4 2 -5 0 4 3 6 6 6 4 -4 2 6 5 2 4 6 6 3 7 7 7 -7 0 7

Thut ton ny c phc tp l O(n) v r rng kh c th tm ra mt thut ton

Bi tp Cu trc d liu v gii thut

Trang 9

Ch ng 2 Tm kim & sp xp
Vit chng trnh hon chnh cho cc bi ton sau y BT2-1.Cho dy s. 84 32 13 64 1 55 48 Hy m phng sp xp tng dn bng cc thut ton ton chn trc tip, i ch trc tip, ni bt, chn trc tip qua dy s trn. BT2-2.Cho dy n s nguyn a[0],a[1],,a[n-1] c sp xp tng dn v mt s nguyn x. a.Hy vit hm tm kim nh phn kim tra xem x c thuc dy s trn hay khng ? Nu tm thy tr v gi tr i nh nht m a[i] = x, nu khng tr v gi tr -1. b.Cho dy n = 8 s nguyn nh sau: 1 2 4 4 4 9 10 15 Nu x=4 th phng php tm kim nh phn cho ra kt qu g ? c.Cho bit k s phn t ln nht ca dy. V d vi n=12 9 6 2 7 9 9 6 5 7 9 6 7 Nu k=5 th kt qu l 9, 9, 9, 9, 7 BT2-3.Cho mng 1 chiu n phn t. Sp xp cc s nguyn t tng dn, cc s khc gi nguyn gi tr v v tr. BT2-4.Cho mng vung n. Hy tm phn t ln nht trn mi ng cho song song vi ng cho chnh. BT2-5.Cho ma trn 2 chiu m dng, n ct.. Hy sp tng dn cc phn t theo chiu t tri qua phi v t trn xung di. BT2-6.Sp xp cc phn t trn cc ng cho song song vi ng cho chnh tng dn. BT2-7.Vit chng trnh cho cc phng php sp xp sau: a.i ch trc tip b.Chn trc tip

Bi tp Cu trc d liu v gii thut

Trang 10

c.Chn trc tip d.Ni bt. BT2-8.Cho dy s. 84 32 13 64 1 55 48 Hy m phng sp xp tng dn bng cc thut ton ton Quick Sort, Merge Sort, Heap Sort, Shell Sort qua dy s trn. BT2-9.Cho mng mt chiu gm n phn t l cc s nguyn. Sp xp cc s chn trong mng theo th t tng, sp xp cc s l theo th t gim dn, cc s 0 gi nguyn v tr.. BT2-10.Cho mng mt chiu gm n phn t l cc s nguyn. Tm k gi tr ln nht khc nhau ca mng BT2-11.Cho mng mt chiu gm n phn t l cc s nguyn. a.Ch gi li mt gi tr trong s cc gi tr ging nhau. b.Sp xp cc s chn trong mng theo th t tng, sp xp cc s l theo th t gim dn, cc s 0 gi nguyn v tr.. BT2-12.Cho tp tin vn bn songuyen.inp cha cc s nguyn. Hy ghi cc s nguyn t trong tp tin songuyen.inp vo tp tin nguyento.out theo th t tng dn mi dng ghi 10 s, cc s cch nhau t nht mt khong cch. BT2-13.Cho 2 file s nguyn c sp tng dn. Hy trn 2 file c mt file cng c sp tng dn (khng dng mng). BT2-14.Cho mt tp tin vn bn. Hy cho bit s lng ca cc s nguyn t, chnh phng, hon ho, s Amstrong trong tp tin ny. BT2-15.Vit chng trnh cho phng php sp xp Quick sort BT2-16.Hy v cy phn hoch qui ca thut ton Quick-Sort trong trng hp xu nht. T , chng t rng chi ph thut ton Quick-sort trong trng hp ny l O(n2). BT2-17.Vit chng trnh cho phng php sp xp cy (heap sort). BT2-18.Vit chng trnh cho phng php sp xp trn trc tip(merge sort). BT2-19.Vit chng trnh cho phng php sp xp vi di bc gim dn (shell sort). BT2-20.Hy cho bit s phn t ti thiu v ti a trong mt heap c chiu cao h ?

Bi tp Cu trc d liu v gii thut

Trang 11

Ch ng 3 Cu trc danh sch lin kt


Vit chng trnh hon chnh cho cc bi ton sau y BT3-1.Cho mt danh sch lin kt n l, mi nt l mt s nguyn dng. a.Tm phn t ln nht danh sch l. bTnh tng cc phn t ca danh sch l. c.m xem trong danh sch l c bao nhiu s nguyn t ? d.m xem trong danh sch c bao nhiu s m ? bao nhiu s bng 0 ? bao nhiu s dng ? e.m xem trong danh sch c bao nhiu s bng x ? f.Tm phn t dng nh nht trong danh sch. BT3-2. Cho mt danh sch lin kt n l, mi nt l mt s nguyn dng. a.Xa phn t u tin trong danh sch. b.Xa phn t cui cng trong danh sch. c.Xa mt phn t c tr bi con tr q. d.Xa mt phn t ngay trc phn t c tr bi con tr q. e.Xa mt nt c gi tr k. BT3-3. Cho mt danh sch lin kt n l, mi nt l mt s nguyn dng. a.Hy to danh sch l1 ch cha cc s nguyn t t danh sch l. b.Tch danh sch l thnh 2 danh sch: mt danh sch cha ton s chn, mt danh sch cha ton s l. BT3-4. Cho mt danh sch lin kt n l, mi nt l mt s nguyn dng. a.Trn hai danh sch tng dn thnh mt danh sch tng dn. b.Sp xp cc phn t ca L gim dn theo phng php chn trc tip BT3-5.Vit chng trnh thc hin cc yu cu sau: a.Khai bo cu trc d liu ca mt danh sch lin kt n cc tnh. Bit rng thng tin ca mi tnh bao gm: tn tnh, din tch, dn s b.Ci t cc thao tc c bn cho danh sch lin kt n cc tnh (thm, sa , xa, duyt). c.Tnh tng din tch ca tt c cc tnh trong danh sch lin kt

Bi tp Cu trc d liu v gii thut

Trang 12

d.Tm a ch ca node cha tnh c din tch ln nht trong danh sch lin kt. e.Tm mt tnh c dn s ln nht f.Sp xp danh sch tng dn theo din tch. BT3-6.Vit chng trnh thc hin cc yu cu sau: a.Khai bo cu trc d liu ca mt danh sch lin kt n lu ta cc nh ca mt a gic li trong mt phng OXY. b.Tnh chu vi ca a gic. c.Tnh din tch ca a gic. BT3-7.Hy vit phn khai bo cu trc d liu m t mt danh sch lin kt n m mi phn t cha mt s nguyn. Vit cc hm thc hin cc yu cu sau: a.m cc s nguyn t ca dnh sch b.To mt danh sch l1 ch cha cc s chn v chia ht cho 3 t danh sch l. c.Sp xp cc phn t ca danh sch theo chiu gim dn. BT3-8.Hy khai bo kiu danh sch lin kt n c tn LIST m mi phn t cha cc thng tin v mt sinh vin bao gm mt s nguyn dng 4 bye ch m s sinh vin v mt chui k t di ti a 35 cho bit h v tn ca sinh vin. Thc hin cc cng vic sau: a.Xy dng hm sp xp danh sch sinh vin theo th t tng dn ca m s sinh vin. b.Xy dng hm thm mt sinh vin mi vo danh sch( c th t) sao cho vn bo m th t tng dn ca m s. BT3-9.Cho mt danh sch lin kt, mi nt cha mt s nguyn. a.Thm mt phn t c gi tr x vo u danh sch b.Ch gi li mt gi tr trong s cc gi tr ging nhau. c.Kim tra xem danh sch c c sp xp tng dn hay khng? d.o ngc danh sch. e.Sp xp cc s chn trong danh sch theo th t tng, sp xp cc s l theo th t gim dn, cc s 0 gi nguyn v tr.. BT3- 10.Hy cho bit chi ph ca mi cng vic sau (theo O()): a.Tnh tng ca N s t nhin l (s nguyn dng l) u tin b.Lit k N phn t ca mng

Bi tp Cu trc d liu v gii thut

Trang 13

c.Lit k 1 phn t trong 1 mng c N phn t d.Tm 1 phn t trong mt danh sch lin kt n c N phn t c sp th t tng dn e.Thm 1 phn t vo hng i c sn N phn t BT3-11.a.Ci t thut ton sp xp chn trc tip trn xu kp b.Ci t thut ton sp xp chn trc tip bng cch s dng quy. BT3-12.Sp xp danh sch tng dn thut ton Quick sort. BT3-13.Cng hai a thc (mi node c 3 thnh phn: h s khc 0 ca mt s hng, s m tng ng v mc ni ti node tip theo). BT3-14.Ta c 4 la chn: 1. Stack; 2. Queue; 3. List; 4. C 3 CTDL ny u khng thch hp. Trong mi tnh hung sau, hy cho bit p dng la chn no l thch hp nht: a.Cc khch hng ti quy bn v xe la ly s th t mua v b.Mt danh sch tn theo th t ABC c.Cc s nguyn cn phi sp th t d.Danh sch cc mn hng bn trong ngy ti quy thu ngn trong siu th e.Chng trnh c s dng k thut Back-tracking f.Cc my bay ang ch p xung phi trng BT3-15.Hy th hin thut ton sp xp ni bt trn danh sch lin kt kp. BT3-16.Tnh gi tr ca a thc P(x) vi x v cc h s cho bit trc c t chc di dng mt danh sch lin kt (mi node c 3 thnh phn: h s khc 0 ca mt s hng, s m tng ng v mc ni ti node tip theo). BT3-17.Hon chnh cc thao tc trn Stack v Queue. BT3-18.Ci t thut ton Quicksort theo kiu khng quy.
BT3-19.Ci t thut ton Mergesort trn xu kp. BT3-20.Tnh gi tr ca mt biu thc dng chui k t bao gm cc ch s v cc

php ton +,-,*,/ , % v du ng m ngoc n. V d: (( 2 + 3 )*2) 4/2 = 12

Bi tp Cu trc d liu v gii thut

Trang 14

Ch ng 4 Cu trc cy
Vit chng trnh hon chnh cho cc bi ton sau y BT4-1. Cho cy nh hnh sau. Hy tr li cc cu hi sau: a.Cc nt no l nt l ? b.Cc nt no l nt nhnh ? c.Cha ca nt G l nt no ? d.Con ca nt C l cc nt no ? e.Cc nt no l anh em ca nt B ? f.Mc ca D, ca L l bao nhiu ? g.Bc ca B, bc ca D l bao nhiu ? h.Bc ca cy ny l bao nhiu ? i.Chiu cao ca cy ny l bao nhiu ? j. di t A n F, t A dn G l bao nhiu ? k.C bao nhiu ng i t gc A c di 3 trn cy ny ? BT4-2. Hy v cy nh phn tm kim T bit rng khi duyt cy T theo th t Node Left Right th c dy nh sau: 9, 4, 1, 3, 8, 6, 5, 7, 10, 14, 12, 13, 16, 19. -Hy duyt cy T trn theo th t left right node, left -node-right. -Lit k cc nt l ca cy ? cc nt nhnh ca cy ? -Hy v li cy sau khi xo nt 10 sao cho T vn l cy nh phn tm kim. BT4-3. a.Nu c im ca cy nh phn tm kim. b.Cy nh phn T c chiu cao l 100 th s c ti a bao nhiu nt ? Trong c ti a bao nhiu nt l ? v mc th 50 ca cy c ti a bao nhiu nt ? BT9-4.Cho cy nh phn tm kim T gm 12 s nguyn vi php duyt LRN cho kt qu nh sau: 1,3,2,6,7,5,4,10,9,12,11,8
O K L M N E B A

Bi tp Cu trc d liu v gii thut

Trang 15

-Hy v cy nh phn tm kim T. -Duyt cy T theo th t NLR -V li cy sau khi xo nt 8. BT4-5. Hy cy nh phn tm kim T gm 11 s nguyn, vi th t cc nt c cho nh sau: 14(gc), 11, 9, 18, 16, 20, 30, 10, 17, 1, 15 Hy duyt cy trn theo cc th t node- left-right, left- node-right, left- right- node. Hy cho bit chiu cao ca cy T. BT4-6. Cho cy nh phn T (nt gc c gi tr l 4) nh hnh v bn: -Cy T c phi l cy nh phn tm kim khng ? -Hy duyt cy T theo cc th t node-left-right, leftnode-right, left- right- node. -Cy T c chiu cao bao nhiu ? -Lit k cc nt l ca cy T. -Lit k cc nt nhnh ca cy T. BT4-7.Cho cy nh phn nh hnh v sau. Hy vit dy cc nt c thm khi duyt cy ny theo a.th t trc b.th t gia c.th t sau. BT4-8. Tm tt c cc cy nh phn m cc nt s xut hin theo mt dy ging nhau khi duyt a.Theo th t trc v th t gia b.Theo th t trc v th t sau c.Theo th t gia v th t sau. BT4-9.
G H I D E F B 6 A C 1 3 5 9 2 7 4

Bi tp Cu trc d liu v gii thut

Trang 16

Cho cy nh phn tm kim T, mi nt cha mt s nguyn. Hy vit cc hm thc hin cc yu cu sau: a.S nt l. b.S nt c ng 1 cy con. c.S nt c ng 2 cy con. d.S nt c kho nh hn x (gi s T l cy nh phn tm kim). e.S nt c kho nh hn x v ln hn y (gi s T l cy nh phn tm kim) f.m xem trong cy T c bao nhiu s chn, bao nhiu s l ? g.Kim tra xem gi tr k c trong cy T khng ? h.m xem trong cy c bao nhiu nt c gi tr m? bao nhiu nt c gi tr dng? i.Kim tra xem gi tr x c trong cy khng ? j.Tm gi tr ln nht, gi tr nh nht ca cy. k.Tm phn t dng nh nht ca cy. BT4.10.Cho cy nh phn tm kim T, mi nt cha mt s nguyn. Hy vit cc hm thc hin cc yu cu sau: a.Chiu cao ca cy. b.Tm lch ca cy. c.Xa phn t c gi l x trong cy d.Xa cc s nguyn t ra khi cy e.Thm mt phn t c gi tr x vo trong cy cy vn l cy nh phn tm kim. BT4-11. Cho cy nh phn tm kim T, mi nt cha mt s nguyn. Hy vit cc hm thc hin cc yu cu sau: a.m s lng nt nm mc th k. b.In ra tt c cc nt mc th k ca cy T c.In ra tt c cc nt theo th t tng 0 n tng th h-1 ca cy T( h l chiu cao ca cy) BT4-12.Hy xc nh gi tr ng/sai cho mi pht biu sau: a.Cy nh phn tm kim lun lun c chiu cao log2N b.Chi ph tm kim trung bnh trn cy nh phn tm kim l log2N

Bi tp Cu trc d liu v gii thut

Trang 17

c.Khi thm 1 phn t vo cy AVL, cn ti a 1 php xoay iu chnh cy d.Khi xa 1 phn t trong cy AVL, cn ti a 1 php xoay iu chnh cy e.Cy AVL lun lun c chiu cao log2N BT4-13.Cho mt cy nh phn biu din 1 biu thc ton hc. Bit rng gc ca cy l Proot, mi nt c thuc tnh key (kiu ch) , cha 1 php tnh(+,- , *,/) hay mt gi tr nguyn (cc nt l). Hy vit hm tnh gi tr biu thc cha trong cy BT4-14.Hy nu nh ngha ca cu trc d liu ca cy nh phn tm kim(CNPTK). Khai bo kiu CNPTK c tn l TREE m mi phn t cha mt s nguyn v thc hin cc cng vic sau: a.Xy dng hm tm kim phn t c kha x trn CNPTK T(gi tr tr v ca hm l con tr tr n phn t tm c) hoc bng NULL, nu khng tm thy. b.Xy dng hm m s phn t c kha ln hn k trn CNPTK T.
BT4-15.Vit chng trnh qun l mt danh b in thoi n gin bao gm cc thng tin: s thu bao, h tn ch thu bao, a ch. Chng trnh cho php cp nht: thm/xo/ sa v tm kim thng tin v mt s thu bao no . BT4-16.Cho mt cy nh phn T, mi nt l mt s nguyn. Hy vit cc hm thc

hin cc yu cu sau: a.Hy m s nt ca cy. b.Cho bit chiu cao ca cy AVL c.Kim tra xem T c phi l cy nh phn tm kim khng ? d.Kim tra xem T c phi l cy cn bng hon ton khng ? e.Kim tra xem T c phi l cy nh phn cn bng khng ? f.Thm mt phn t vo cy AVL g.Hy mt phn t trn cy AVL.
BT4-17.Cho cy nh phn T trong thng tin ti mi nt trong cy biu din cc

thnh phn thng tin ca mt c gi. Bit rng mt c gi gm nhng thnh phn: M c gi, tn c gi, ngy sinh, a ch, ngy lp th.. a.Tm a ch ca c gi ln tui nht trong cy. b.Lit k cc c gi trong cy sinh sau nm 1975 c.m s lng node c 2 cy con c ngy lp th trong ngy 09/07/2009.

Bi tp Cu trc d liu v gii thut

Trang 18

d.Tm kim a ch theo m c gi. e.Lit k cc c gi trong cy.


BT4-18.m s nt c bc bng 2 trong cy nh phn (hy kim nghim li rng s

nt l lun bng s nt bc 2 cng thm 1)


BT4-19.Cho mt cy nh phn tm kim T. Hy vit chng trnh m s phn t

trong cy theo 2 cch: a.Khng dng quy b.C dng quy.


BT4-20.Chng minh rng mt cy nh phn vi chiu cao h s c ti a 2h-1 nt

Bi tp Cu trc d liu v gii thut

Trang 19

Mt s thi mu
MN: CU TRC D LIU V GII THUT ( S 1) Thi gian lm bi: 90 pht, khng k thi gian pht CU I (2 im) Cho bit phc tp ca cc thut tan sau. a.Thm mt phn t vo mt danh sch lin kt l. b.Thm mt phn t vo cy nh phn tm kim. c.Xa mt phn t trong mng 1 chiu d.Tm kim mt phn t trong mt danh sch lin kt e.Tm kim mt phn t tong mt danh sch lin cy f.Sp xp cc phn t trong danh sch lin kt g.Xa mt phn t trong mt danh sch lin kt h.Xa mt phn t trong mt cy nh phn tm kim. Cu II (4 im) Cho mt danh sch lin kt n l khc rng; mi phn t l mt s nguyn dng. a.Tm s nguyn u tin trong danh sch. b.To danh sch l1 ch cha cc s nguyn t t danh sch l. c.Xa cc s c gi tr ln nht trong danh sch l. Cu III (4 im) Cho cy nh phn tm kim T c kha l cc s nguyn. a.In cc kha theo chiu gim dn. b.Tm mc ca nt c gi tr ln nht. c.Tm cc ng i c di l 4 trn cy.

Bi tp Cu trc d liu v gii thut

Trang 20

MN: CU TRC D LIU V GII THUT ( S 2) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I (2 im) Cho mt mng cc gi tr nguyn nh sau: Ch s Gi tr Yu cu: a.Cho bit kt qu sau khi bin i mng trn thnh dy heap. b.Th hin dy heap theo dng cy nh phn. Cu II (4 im) Cho danh sch lin kt l. Hy o ngc cc phn t ca danh sch (khng dng danh sch ph khc) Cu III (4 im) Cho cy nh phn tm kim T. a.Tm cy con T c tng ln nht (chi tm 1 cy tha) b.Tm gi tr nt l mc su nht (ch tm 1 gi tr tha) 0 10 1 3 2 16 3 7 4 1 5 4 6 9 7 14 8 2 9 8

Bi tp Cu trc d liu v gii thut

Trang 21

MN: CU TRC D LIU V GII THUT ( S 3) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I (2 im) Hy v cy nh phn tm kim T bit rng khi duyt cy T theo th t left right node th c dy nh sau: 1, 4, 7, 5, 3, 16, 18, 15, 29, 25, 30, 20, 8 -Hy duyt cy T trn theo th t node - left - right. -Cy T c chiu cao l bao nhiu ? Tm cc ng i t gc c di l 4 trn cy. Cu II(4 im) Lm th no chuyn cc phn t trong stack S1 sang stack S2 vi nhng yu cu nh sau: Th t cc phn t trong S2 ging nh trong S1 Khng c dng thm stack ph, ch c dng thm vi bin ph Vit gii thut dng m gi. Cu III (4 im) Hy vit hm lit k tt c cc phn t ca mt cy nh phn tm kim tha iu kin gi tr ca phn t nm trong khong [Min, Max] cho trc.

Bi tp Cu trc d liu v gii thut

Trang 22

MN: CU TRC D LIU V GII THUT ( S 4) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I (2 im) Xt thut gii to cy nh phn tm kim. Nu th t cc kho nhp vo l nh sau:8, 3, 5, 2, 20, 11, 30, 9, 18, 4 th hnh nh cy to c nh th no ? sau , nu hy ln lt cc nt 5, 20 ( theo th t ) th cy s thay i nh th no trong tng bc hy (v li cy cho mi bc). Cu II (2 im) Cho mng A cha cc phn t: V tr i A[i] 0 5 1 1 2 2 3 8 4 6 5 10 6 3 7 9 8 4 9 7

a.Hy cho bit kt qu sau khi hiu chnh mng A thnh (binary) heap? b.V (binary) heap dng cy nh phn. c.Cho bit s phn t ti thiu v ti a ca mt (binary) heap c chiu cao l h ? Cu III (3 im) a.Hy vit mt hm ci t thut ton Selection-Sort bng qui. b.Cch ci t thut ton ny bng qui c g tt (khng tt) so vi kiu ci t bng php lp thng thng. Cu IV (3 im) Cho mt danh sch lin kt n L. Vit mt hm o ngc th t ca cc phn t trong danh sch vi nhng yu cu nh sau: Nhp (Input): danh sch L Xut (Output): danh sch o ngc th t iu kin rng buc: ch c php duyt danh sch L 1 ln

Bi tp Cu trc d liu v gii thut

Trang 23

MN: CU TRC D LIU V GII THUT ( S 5) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I (2 im) Nu ta xa 1 phn t khi cy BST v sau thm n vo li cy. Hi: hnh dng ca cy b thay i khng? Gii thch? Cu II (2 im) Xt thut ton Sp xp N phn t ca mng A theo m t sau: Tm phn t nh nht trong mng A, v copy sang mng B ti v tr u tin, tm phn t nh nh trong mng A, v copy sang mng B ti v tr th 2, thc hin tng t cho nhng phn t cn li ca mng A. Yu cu: a.Vit m lnh(hoc m gii) cho thut ton trn
b.Cho bit chi ph ca thut ton tng ng vi trng hp tt nht, xu nht

Cu III (3 im) Cho mt danh sch lin kt n trong , mi phn t cha 1 s nguyn Hy vit hm xa phn t c gi tr ln nht trong danh sch. Lu : Ch c php duyt danh sch 1 ln Nu c nhiu phn t ln nht ging nhau, xa phn t u tin Cu IV (3 im) Gi s T l mt cy nh phn tm kim m ti mi nt lu mt s nguyn. Hy khai bo kiu d liu T v xy dng cc hm sau: a.Hm thm mt node c kha X vo T. b.Hm m s nt c kha ln hn X nhng nh hn Y (X<Y).

Bi tp Cu trc d liu v gii thut

Trang 24

MN: CU TRC D LIU V GII THUT ( S 6) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I (2 im) Hy trnh by 2 cch chn phn t trung tm (pivot) khc nhau trong thut ton Quick-sort. Phn tch c im tt/xu ca mi cch chn da trn chi ph thut ton. Cu II (4 im) Vit chng trnh trn danh sch lin kt n m cc s l cc s nguyn dng nh sau: a.Hon v phn t vi phn t ng lin sau n (nu c) b.o ngc mt danh sch bng cch thay i cc lin kt ch khng sao chp qua mt danh sch khc. c.Xa tt c cc s nguyn t trong danh sch. Cu III (4 im) Cho cy nh phn tm kim T, mi nt cha mt s nguyn. Hy vit cc hm thc hin cc yu cu sau: a.In ra tt c cc nt mc th k ca cy T b.In ra tt c cc nt theo th t tng 0 n tng th h-1 ca cy T( h l chiu cao ca cy)

Bi tp Cu trc d liu v gii thut

Trang 25

MN: CU TRC D LIU V GII THUT ( S 7) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I(2 im) a.Hy nu s khc nhau ca cy nh phn tm kim (BST) v Heap? b.C th lit k N phn t ca Heap theo th t tng dn vi chi ph O(N) khng? V sao? Cu II (4 im) Hy khai bo kiu cu trc d liu lin kt n m mi phn t cha thng tin v mt quyn sch bao gm cc trng: M s sch (s nguyn 4 byte), tn sch(chui, ti a 40 k t), tc gi (chui, ti a 30 k t), nm xut bn (s nguyn 4 byte). a.m s sch xut bn nm X. b.Sp xp danh sch theo m s sch. Cu III (4 im) Cho cy nh phn tm kim T, mi nt cha mt s nguyn. Hy vit cc hm thc hin cc yu cu sau: a.Cho bit mc ca nt c kho nh nht trn cy T. b.Kim tra xem gi tr x c thuc cy hay khng ? Nu c thi in ng i t nt gc n nt x.

Bi tp Cu trc d liu v gii thut

Trang 26

MN: CU TRC D LIU V GII THUT ( S 8) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I(2 im) a.Cho dy 15 s nguyn a[i] vi I = 0..14 nh sau: 111222333444555 Cho bit v tr tr v khi tm kim gi tr x = 4 trong dy trn bng phng php tm kim nh phn b.M phng cc bc sp xp dy s sau theo thut ton Bubble Sort, Quick Sort: 6 2 5 1 9 7 Cu II(4 im) Hy khai bo kiu d liu danh sch lin kt n m mi phn t cha thng tin v mt sinh vin bao gm cc trng: m s sinh vin (chui, 6 k t), tn sinh vin(chui, ti a 10 k t), h sinh vin (chui, ti a 30 k t), im trung bnh tch ly (s thc), loi tt nghip (k t). Vi cc kiu d liu va khai bo, hy xy dng cc hm sau: a.Hm xp loi tt nghip cho sinh vin. Trong xp loi X(xut sc) nu c im trung bnh tch ly (TB) >=9.0; Loi G(Gii) nu c im trung bnh tch ly 8<=(TB) <9.0; Loi K(kh) nu c im trung bnh tch ly 7<= TB< 8; Loi T(trung bnh) nu c im trung bnh tch ly 5<= TB <7. b.Hm sp xp danh sch theo im trung bnh tch ly. c.Hm sp xp danh sch t loi X, danh sch cn c sp theo tn tng dn, nu tn trng th sp theo h tng dn. Cu III (4 im) Xt thut ton Xa phn t P c 2 cy con ca cy nh phn tm kim. Hy vit hm Tm phn t thay th v xa nh sau: void SearchStandFor_and_Delete (NODE *P); // P l nt cn xa Yu cu: -Tm phn t thay th Q phn t ln nht trong cy con tri ca P -Thay P bng Q -Xa Q -Khng dng qui

Bi tp Cu trc d liu v gii thut

Trang 27

MN: CU TRC D LIU V GII THUT ( S 9) Thi gian lm bi: 90 pht, khng k thi gian pht Cu I(2 im) Cho mng mt chiu gm n phn t l cc s nguyn dng. a.Tm gi tr ln th k ca mng b.Chuyn cc gi tr chn v u mng, cc gi tr l v cui mng Cu II (4 im) Vit chng trnh thc hin cc yu cu sau: a.Nhp danh sch lin kt kp cc s nguyn. b.Xut danh sch lin kt kp cc s nguyn. c.Tnh tng cc node trong danh sch lin kt kp Cu III (4 im) Gi s T l mt cy nh phn tm kim m ti mi nt lu mt s nguyn. Hy khai bo kiu d liu T v xy dng cc hm sau: a.Hm tm kim mt node c kha X. b.Hm m s nt c kha ln hn X.

Bi tp Cu trc d liu v gii thut

Trang 28

MN: CU TRC D LIU V GII THUT ( S 10) Thi gian lm bi: 90 pht, khng k thi gian pht CU I (2 im) Hy so snh (trong gii hn 10 dng) nhng c tnh tiu biu ca 3 phng php sp xp: Heap sort, Merge sort v Quick sort Cu II (4 im) Cho mt danh sch lin kt n c phn t u l head; mi nt ca n biu th mt im c ta x,y trn mt phng OXY. Hy m t cu trc ca danh sch trn. Gi s danh sch trn c sn d liu. Vit chng trnh to 2 danh sch lin kt mi h1 v h2 t danh sch cho, trong : h1 cha cc nt c thnh phn x>0 v y>0. h2 cha cc nt c thnh phn x<0 v y<0. Cc nt cn li ca danh sch head s c in ra mn hnh m khng to xu. Cu III (4 im) Cho mt cy nh phn T. a.Kim tra xem T c phi l cy cn bng hon ton khng ? b.Thm mt phn t vo cy AVL c.Hy mt phn t trn cy AVL.
Ht

You might also like