Professional Documents
Culture Documents
Cac Cau Truc Du Lieu Dac Biet PDF
Cac Cau Truc Du Lieu Dac Biet PDF
D liu
Kt qa
Gm 1 s nguyn duy nht cho bit tng din tch c v bn .
V d
D liu:
2
10 10 20 20
15 15 25 30
Kt qa
225
Hng dn:
- V cc to u nguyn, nu ta chia mt phng thnh li cc vung th din tch phn b ph bi
cc HCN chnh l s vung thuc t nht 1 HCN. Nh vy ta ch cn m vi mi ct dc rng 1 n v
c bao nhiu vung nh vy l c.
- S b ph mi ct ch thay i khi cc HCN ph n thay i. Do nu gia 2 ct i,i+1 khng c
s thay i v cc HCN ph ln chng th s vung b ph 2 ct ny l bng nhau. S thay i ny ch
c khi c 1 cnh ca 1 HCN hon ton thuc trn ng thng ng gia 2 ct trn.
T 2 nhn xt trn ta i ti thut ton sau:
- B1: sp xp ch s v tr cc cnh thng ng ca cc HCN theo chiu tng dn, nhng ct thuc
gia 2 ch s lin tip s c s b ph bng nhau, ta ch cn m lng ny ri nhn vi s lng ct l
c. Do ch xt 1 ct ngay sau v tr 1 cnh l .
- B2: xt cc ct t tri sang phi, nu ln u tin gp 1 HCN (gp cnh dc tri ca n) th thm
on m n ph ct tng ng, nu l cnh dc phi ca HCN th loi b on m n ph. Mi ln
xt 1 ct m s lng b ph ca ct .
Ta dng interval tree cho qu trnh ny. Bi ton c th c pht biu li nh sau: Cho 1 dy s c N
s, c 1 s thao tc l tng hoc gim 1 s phn t lin tip ca dy ln 1 n v, sau mi thao tc hi dy
s c bao nhiu s ln hn 0. Vi gi tr max to = 30000 th gi tr N trn c th ln ti 30000, nu
gi tr ny ln hn s rt kh khn trong lu tr. Nhng ta cng c th p dng phng php ri rc ho
cc on lin tip ging nhau. Khi N ln nht ch bng s HCN, tc l 10000 m thi, bi ton lc ny
khc 1 cht: mi phn t km 1 hng gi tr, tnh tng hng gi tr cc phn t ln hn 0.
Vi cch pht biu ny bi ton tr nn gn gi hn v d dng gii quyt hn rt nhiu. Ch cn
lu km mi nt cy interval l s lng phn t dng n qun l. Phn cn li ca bi ton xin nhng
cho cc bn t gii.
Dng m rng ca interval tree:
Ta thy c sc mnh ca Interval tree trong x l bi ton dy s. Vy nu vi 1 bng s th sao?
Nu coi dy s l 1 on thng (1 chiu) th bng s c th coi nh 1 HCN (2 chiu), c s m rng thm
1 chiu na so vi dy s. Nh vy th hon ton c th dng Interval Tree theo 1 cch no x l
cc bng s. Cy Interval Tree khi thng c gi l Interval Tree 2D Cy interval tree 2 chiu.
Nu nh Interval Tree ch c 1 cch biu din thng dng v c dng (ti 99.9% cc bi ton dng cu
Cy ny hon ton tng t Interval tree, ta ch cn qun l theo 2 chiu, c th dng mng 1 chiu
hoc 2 chiu qun l tu .
p dng vo bi ton trn ta lu ti mi nt l tng gi tr cc m HCN qun l.
Cc hm GET v UPDATE c th vit hon ton tng t hm vi Interval tree, ch khc im t 1
nt s gi ti 4 nt con thay v 2. phc tp thut ton cho cc thao tc tr thnh O(LogM*logN) ch
khng phi l O(logN) na.
Cch 2: Qun l ln lt theo tng chiu:
Vi bng s M*N ta dng M interval tree qun l M hng ring r (lp cy T1). Ti nt (i,j) ca cy
lu hng K s lu tng cc t i ti j ca hng K. V mi hng u c N ct nn s nt mi cy con ny
l bng nhau. Gi s c P nt con trong mi cy con ny. Ta s dng lp cy T2 gm P cy interval na,
mi cy s qun l M nt: cy th P s qun l nt th P ca M cy interval trc . Vy gi tr cc
trong HCN s c truy xut nh th no? Vi 1 HCN (xL,xR,yL,yR) th u tin ta tm cc nt thuc
on (yL,yR) thuc lp cy T1. Vi mi nt truy xut d liu cy tng ng thuc T2 v trong on
6
Cng nh trong interval tree, thng tin c lu 1 nt binary indexed tree l thng tin ca n v tt
c cc nt con ca n (cc phn t cc nt ny b n qun l). Thng tin cc nt c tch lu dn dn
ln trn. Nhng thay v s nt rt nhiu nh cy interval, ta ch cn dng 1 mng O(N) lu tr ton
1 S 1024
Gi tr ca mt ti mi thi im lun thuc phm vi [0, 32767].
-32768 A 32767
S ch th thuc phm vi [3, 60002].
Tng s in thoi trn ton b bng khng vt qu 230.
V d
D liu
04
1123
20022
1112
1 1 2 -1
11
12
18