欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

柚子快報(bào)邀請(qǐng)碼778899分享:[藍(lán)橋杯學(xué)習(xí)] 樹鏈剖分

柚子快報(bào)邀請(qǐng)碼778899分享:[藍(lán)橋杯學(xué)習(xí)] 樹鏈剖分

http://yzkb.51969.com/

定義

將樹分割成若干條鏈,以維護(hù)樹上的信息,若無(wú)特殊需求,一般是重鏈剖分。

重鏈剖分

如何重鏈剖分

兩個(gè)dfs

第一個(gè)dfs是預(yù)處理各個(gè)結(jié)點(diǎn)的基本信息,第二個(gè)dfs是利用信息進(jìn)行剖分(dfs序)

操作步驟

第一次dfs

更新當(dāng)前結(jié)點(diǎn)信息(子樹個(gè)數(shù)、父結(jié)點(diǎn)信息、深度)對(duì)子結(jié)點(diǎn)進(jìn)行dfs子結(jié)點(diǎn)dfs之后,把子結(jié)點(diǎn)的子樹個(gè)數(shù)加到父結(jié)點(diǎn),更新重兒子。

第二次dfs

因?yàn)閐fs序連續(xù)的值是一條鏈,所以,我們需要讓樹在進(jìn)行dfs時(shí),優(yōu)先對(duì)重兒子進(jìn)行dfs,之后再對(duì)其它輕兒子進(jìn)行dfs

重鏈剖分的應(yīng)用

將剖分的重鏈放在線段數(shù)組或者樹狀數(shù)組上,然后在這個(gè)數(shù)據(jù)結(jié)構(gòu)上進(jìn)行維護(hù)。

對(duì)某條鏈上的節(jié)點(diǎn)進(jìn)行更新

用數(shù)據(jù)結(jié)構(gòu)對(duì)節(jié)點(diǎn)信息進(jìn)行維護(hù),進(jìn)行區(qū)間查詢,區(qū)間更新。

對(duì)某節(jié)點(diǎn)子樹進(jìn)行更新/查詢

由dfs序可知,某節(jié)點(diǎn)的入序和出序之間的連續(xù)數(shù)就是該節(jié)點(diǎn)的子樹。

查詢兩節(jié)點(diǎn)的最近公共祖先LCA

操作步驟:

當(dāng)兩節(jié)點(diǎn)不在同一條鏈上時(shí),選擇深度更淺的結(jié)點(diǎn),跳到父鏈(鏈?zhǔn)椎母附Y(jié)點(diǎn))當(dāng)兩節(jié)點(diǎn)在同一條鏈上時(shí),深度更淺的點(diǎn)就是最近公共祖先LCA

查詢、修改兩節(jié)點(diǎn)之間路徑的信息

主體還是尋找LCA,就是如果跳到父鏈(或是其它點(diǎn)),把x到它首結(jié)點(diǎn)(其它點(diǎn))之間結(jié)點(diǎn)信息進(jìn)行更新。

柚子快報(bào)邀請(qǐng)碼778899分享:[藍(lán)橋杯學(xué)習(xí)] 樹鏈剖分

http://yzkb.51969.com/

參考文章

評(píng)論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19014962.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄