青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

在線段樹中,一般都不需要刻意保存其左右子結(jié)點(diǎn)的下標(biāo),而直接由其本身的下標(biāo)導(dǎo)出,傳統(tǒng)的寫法是:
根結(jié)點(diǎn):1
A的左子結(jié)點(diǎn):2A(寫成A<<1)
A的右子結(jié)點(diǎn):2A+1(寫成(A<<1)+1)
這種表示法可以表示出整棵線段樹,因?yàn)椋?br />(1)每個(gè)結(jié)點(diǎn)的子結(jié)點(diǎn)的下標(biāo)都比它大,這樣就不會(huì)出現(xiàn)環(huán);
(2)每個(gè)結(jié)點(diǎn)的父結(jié)點(diǎn)都是唯一的(其本身下標(biāo)整除2);
但是,這種表示法有一個(gè)弱點(diǎn):結(jié)點(diǎn)的下標(biāo)是有可能超過2N的,但不會(huì)超過4N,因此,為了表示出跨度為N的線段,我們需要開4N的空間,然而,其中只有2N-1個(gè)位置是有用的(因?yàn)楸硎究缍葹镹的線段的線段樹共有(2N-1)個(gè)結(jié)點(diǎn)),這樣,就有一半的空間被浪費(fèi)。尤其是這種線段樹推廣到多維的時(shí)候——K維線段樹就只有1/2K的位置是有用的,空間利用率非常低。在某些卡空間的場(chǎng)合,它就囧掉了。

那么,有木有好一點(diǎn)的寫法呢?最好能使空間利用率達(dá)到100%——也就是所有結(jié)點(diǎn)的下標(biāo)剛好就是1~(2N-1)!!(0號(hào)結(jié)點(diǎn)一般作為“哨兵”,不被占用)
并且,這種寫法要保證僅僅由結(jié)點(diǎn)的下標(biāo)和它表示的線段的左右端點(diǎn)(因?yàn)樵诒闅v線段時(shí),下標(biāo)和左右端點(diǎn)基本上都是同時(shí)知道的),就能得出其子結(jié)點(diǎn)的下標(biāo),而不需要借助額外的東東(最好mid都不需要算)。
這種寫法就是——直接將每個(gè)結(jié)點(diǎn)的DFS遍歷次序當(dāng)做它的下標(biāo)!!
比如,跨度為6的線段樹:

容易發(fā)現(xiàn),根結(jié)點(diǎn)下標(biāo)為1,下標(biāo)為A的結(jié)點(diǎn)的左子結(jié)點(diǎn)下標(biāo)為(A+1),右子結(jié)點(diǎn)下標(biāo)為A+SZ(A.L)+1,其中SZ(A.L)為A的左子樹大小。
若A的左右端點(diǎn)為l、r,mid=(l+r)/2(下取整),則A的左子樹所表示的線段為[l, mid],所以SZ(A.L)=(mid-l+1)*2-1=(mid-l)*2+1=((r-l-1)/2(上取整))*2+1
這樣,A的右子結(jié)點(diǎn)下標(biāo)就是A+((r-l+1)/2(上取整))*2,也就是A加上大于(r-l)的最小的偶數(shù)
寫在代碼里就是:
int mid=l+r>>1;
opr(l, mid, A
+1);
opr(mid
+1, r, (r-l&1?A+r-l+1:A+r-l+2));
或者,借助位運(yùn)算,可以免去條件判斷:
int mid=l+r>>1;
opr(l, mid, A
+1);
opr(mid
+1, r, A+r-l+2-((r^l)&1));
經(jīng)測(cè)試,后者(使用位運(yùn)算的)雖然總的運(yùn)算次數(shù)多于前者(使用條件判斷的),但后者比前者快一點(diǎn)點(diǎn),其原因可能與C語言中的條件運(yùn)算符速度較慢有關(guān);

這樣,我們就成功地將線段樹下標(biāo)的空間利用率提高到了100%!!以后只需要開2N空間就行了囧……
與傳統(tǒng)表示法相比,這種新式表示法雖然可以節(jié)省空間,但時(shí)間消耗要更大一些(時(shí)間和空間總是矛盾的囧……),因?yàn)樗谡矣易咏Y(jié)點(diǎn)的時(shí)候需要較多的運(yùn)算。平均起來,新式表示法比傳統(tǒng)表示法要慢10~15%,對(duì)于某些坑爹的數(shù)據(jù)(對(duì)右子結(jié)點(diǎn)調(diào)用比較多的那種)可能慢得更多。此外,在下放標(biāo)記的時(shí)候,傳統(tǒng)表示法只需要知道結(jié)點(diǎn)下標(biāo)就行了,而新式表示法必須同時(shí)知道結(jié)點(diǎn)的左右端點(diǎn),這樣在dm中就需要傳遞三個(gè)參數(shù),從而要慢一些,當(dāng)然,我們可以不用dm,直接在操作里面寫標(biāo)記下放。

Feedback

# re: 【AHOI2013復(fù)仇】關(guān)于線段樹下標(biāo)的一種優(yōu)化表示法[未登錄]  回復(fù)  更多評(píng)論   

2012-12-21 22:08 by xiaodao
zkw 線段樹?。。。。

# re: 【AHOI2013復(fù)仇】關(guān)于線段樹下標(biāo)的一種優(yōu)化表示法  回復(fù)  更多評(píng)論   

2015-05-05 15:03 by zkw
zkw線段樹表示不服!!!
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美视频在线观看 亚洲欧| 国产在线乱码一区二区三区| 国产亚洲欧美另类中文| 欧美成人精品在线| 国产婷婷色一区二区三区四区| 日韩午夜一区| 亚洲影视九九影院在线观看| 欧美在线看片a免费观看| 亚洲欧美乱综合| 正在播放亚洲| 久久青青草综合| 亚洲欧洲在线免费| 欧美激情一区二区三区 | 亚洲一区二区三区在线| 久久亚洲美女| 国产主播在线一区| 亚洲亚洲精品在线观看| 国产精品综合av一区二区国产馆| 亚洲一区黄色| 久久精品成人一区二区三区 | 99视频精品在线| 亚洲综合精品一区二区| 国产日韩精品入口| 免费亚洲电影在线观看| 亚洲精品视频免费观看| 亚洲在线观看| 亚洲人成人一区二区三区| 国产精品青草久久久久福利99| 老司机成人在线视频| 亚洲欧美日韩综合aⅴ视频| 亚洲毛片在线观看.| 欧美 日韩 国产一区二区在线视频 | 性伦欧美刺激片在线观看| 亚洲最黄网站| 国产一区日韩一区| 国产精品免费福利| 欧美日韩在线视频一区| 欧美成人亚洲| 麻豆9191精品国产| 久久久精品国产99久久精品芒果| 亚洲黄色免费| 亚洲精品免费电影| 亚洲人成网在线播放| 136国产福利精品导航网址应用| 国产中文一区二区三区| 国产亚洲欧美一级| 亚洲电影成人| 99精品久久| 亚洲综合大片69999| 欧美影院一区| 欧美a级一区二区| 亚洲人成高清| 亚洲一区二区三区四区五区午夜| 亚洲影视中文字幕| 美日韩免费视频| 亚洲美女中文字幕| 午夜精品区一区二区三| 久久久久久久性| 欧美午夜电影网| 精品福利免费观看| 99热免费精品在线观看| 久久久久久久一区| av成人黄色| 久久久久久一区二区| 欧美性一二三区| 亚洲国产高潮在线观看| 久久爱另类一区二区小说| 欧美激情第1页| 亚洲午夜精品17c| 欧美国产综合| 影音先锋欧美精品| 欧美一区二区日韩| 野花国产精品入口| 欧美成人国产| 在线观看日韩av电影| 香蕉成人久久| 亚洲一区二区三区四区五区黄| 欧美激情一区在线| 亚洲国产三级网| 久久女同互慰一区二区三区| 亚洲在线视频| 国产精品久久久久aaaa| 9l视频自拍蝌蚪9l视频成人| 亚洲国产成人午夜在线一区| 欧美一级日韩一级| 激情欧美丁香| 亚洲精品乱码久久久久久| 欧美电影资源| 亚洲一区二区三区四区五区黄| 在线视频免费在线观看一区二区| 欧美日韩亚洲国产精品| 亚洲欧美另类综合偷拍| 久久av在线看| 亚洲国产精品一区制服丝袜| 亚洲国产成人91精品| 亚洲精品网址在线观看| 欧美精品在线视频| 欧美亚洲三级| 另类欧美日韩国产在线| 亚洲一级免费视频| 久久精品99国产精品日本| 日韩午夜在线| 久久电影一区| 亚洲一区国产精品| 亚洲欧美久久久| 欧美黄污视频| 久久亚洲一区二区三区四区| 欧美二区乱c少妇| 欧美在线观看一区| 欧美成人免费视频| 久久精品国产精品| 欧美日韩综合不卡| 亚洲国产高潮在线观看| 国产色综合网| 一本色道久久综合亚洲精品不卡| 亚洲高清久久| 久久久精品动漫| 欧美一级二区| 欧美精品www| 亚洲黑丝在线| 亚洲精品久久久久久下一站 | 亚洲激情啪啪| 久久女同精品一区二区| 欧美诱惑福利视频| 欧美三级欧美一级| 宅男噜噜噜66一区二区| 国产精品99久久久久久久女警| 女主播福利一区| 欧美黄色大片网站| 亚洲美女福利视频网站| 欧美日本在线看| 亚洲视频精选| 久久国产天堂福利天堂| 国产视频一区三区| 久久久激情视频| 亚洲黄色毛片| 香港成人在线视频| 激情欧美日韩| 欧美日韩亚洲天堂| 久久av老司机精品网站导航| 国产乱理伦片在线观看夜一区| 亚洲一级影院| 久久综合中文| 一区二区激情| 国产亚洲毛片| 欧美精品久久久久久久免费观看| 亚洲视频免费在线| 欧美mv日韩mv国产网站| 中国成人在线视频| 国精品一区二区| 国产精品福利av| 欧美a级片一区| 午夜精品美女自拍福到在线 | 国产精品专区h在线观看| 久久成人精品无人区| 日韩午夜精品| 亚洲国产成人av好男人在线观看| 亚洲女女女同性video| 亚洲精品黄网在线观看| 韩国一区电影| 国产午夜亚洲精品不卡| 欧美调教vk| 欧美另类综合| 欧美顶级大胆免费视频| 男女激情久久| 毛片一区二区三区| 美女脱光内衣内裤视频久久影院| 亚洲欧美不卡| 久久爱另类一区二区小说| 亚洲午夜一二三区视频| 99视频精品免费观看| 亚洲精品一区二区网址| 亚洲剧情一区二区| 亚洲精品久久久久久久久久久久| 欧美第一黄网免费网站| 欧美激情一区二区三级高清视频 | 欧美日韩综合在线| 欧美日韩国产欧| 欧美日本不卡| 国产美女精品免费电影| 国产一区二区三区在线观看视频| 国产视频综合在线| 影音先锋亚洲一区| 日韩一区二区福利| 亚洲欧美激情四射在线日| 性色av一区二区三区在线观看| 欧美一区二区三区另类| 久久久久www| 欧美激情精品久久久久久黑人| 国语精品中文字幕| 国产欧美一区二区三区沐欲 | 午夜精品久久久久久久99樱桃| 亚洲影院色无极综合| 欧美在线视频观看| 欧美精品久久久久久久| 国产精品一区二区三区久久| 狠狠色狠狠色综合日日tαg| 亚洲免费成人av| 久久婷婷丁香| 一区二区成人精品|