版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、樹勝利一中 王子昱概要定義 & 性質(zhì)樹的遍歷Dfs序, Bfs序 & 歐拉序LCA問題樹形DP*樹分治題目選講定義 & 性質(zhì)定義(之一):聯(lián)通、無環(huán)的無向簡(jiǎn)單圖每個(gè)頂點(diǎn)都是割點(diǎn),每條邊都是割邊NOI07 追捕盜賊在樹上添加一條邊會(huì)得到一個(gè)環(huán)在生成樹相關(guān)的問題中很有用的性質(zhì)樹是二分圖關(guān)鍵字N個(gè)頂點(diǎn),n-1條邊的聯(lián)通圖任意兩點(diǎn)間有且只有一條路徑每個(gè)點(diǎn)向東至多連一條邊(NOI2008道路設(shè)計(jì))Et cetera樹的遍歷深度優(yōu)先遍歷和圖的dfs一致先序遍歷,中序遍歷,后序遍歷DFS序DFS序深度優(yōu)先遍歷得到的序列:Dfs(x)list.push_back(x)For every child ch of
2、 x:Dfs(ch)List.push_back(x)abeeffbcgghhiicdjjda()()()()()()DFS序 : 性質(zhì)一棵子樹對(duì)應(yīng)一段連續(xù)的序列abeeffbcgghhiicdjjda或者是abefcghidja例題給定一棵節(jié)點(diǎn)帶權(quán)的樹兩種操作A I delta:以I為根的子樹內(nèi)節(jié)點(diǎn)權(quán)值+deltaQ I: 求以I為根的子樹的權(quán)值和樹狀數(shù)組|線段樹維護(hù)dfs序abeeffbcgghhiicdjjda()()()()()()DFS序 : 性質(zhì)改動(dòng)一下剛才的代碼:Dfs(x)list.push_back(+x)For every child ch of x:Dfs(ch)List
3、.push_back(-x)考慮這個(gè)序列從+a到+g的和+a +b +e e +f f b +c +g正負(fù)抵消后就是從a到g的路徑!abeeffbcgghhiicdjjda()()()()()()例題一棵節(jié)點(diǎn)帶權(quán)的樹,兩種操作A I delta: 點(diǎn)i的權(quán)增加deltaQ I j: 輸出從i到j(luò)的路徑上點(diǎn)的權(quán)值和直接套用剛才的方法?abeeffbcgghhiicdjjda()()()()()()例題反例:從e到c+e e b +ce-c a-e + a-c weighta(+a +b +e) + (+a +b +e e +f f b +c) aQ(u, v) = Q(w, u) + Q(w,
4、v) weightw,W = LCA(u,v)什么是LCA?一會(huì)再說樹狀數(shù)組|線段樹維護(hù)DFS序abeeffbcgghhiicdjjda()()()()()()廣度優(yōu)先遍歷圖的BFS使用隊(duì)列BFS序BFS序廣度優(yōu)先遍歷得到的序列Bfs(x)Que.push(x)While not Que.empty()Y = que.pop()List.push_back(y)For every child ch of yque.push(ch)同一深度的節(jié)點(diǎn)形成一個(gè)連續(xù)的區(qū)間Algorithm Engagement 2010 Firm這道題涉及的一些東西超綱了= =abcdefghij歐拉序列以根為起點(diǎn)的歐
5、拉回路應(yīng)用:LCA(最近公共祖先)問題:LCA(u,v)表示u和v的深度最大的公共祖先圖中LCA(g,h)=c,LCA(g,j)=a給歐拉序列里的每個(gè)點(diǎn)加權(quán),點(diǎn)i的權(quán)值是i的深度于是u, v的LCA是歐拉序列中u, v之間深度最小的點(diǎn)證明?abebfbacgchcicadjdae.g.abebfbacgchcicadjda0 LCA(g,h)=c樹形DPSPOJ PT07X樹的最小覆蓋最小覆蓋:選出點(diǎn)集的最小子集使得每條邊至少有一個(gè)端點(diǎn)在該點(diǎn)集中二分圖:轉(zhuǎn)化為匹配f1i表示選擇i時(shí), 以i為根的子樹的最小覆蓋; f0i表示不選i時(shí)的最小覆蓋轉(zhuǎn)移SPOJ PT07Z樹的最長(zhǎng)路一種優(yōu)美的貪心算法兩
6、遍dfs應(yīng)用了樹的獨(dú)特性質(zhì),不可推廣DP任意選定一個(gè)根最長(zhǎng)路一定是從一個(gè)點(diǎn)向下擴(kuò)展出的最長(zhǎng)路f和次長(zhǎng)路g (如果有)的和 沿最短路走到該點(diǎn),再?gòu)母狞c(diǎn)沿次短路繼續(xù)走只需要維護(hù)這兩個(gè)量就可以了最長(zhǎng)路 : 推廣求出每個(gè)頂點(diǎn)出發(fā)的最長(zhǎng)路定根之后,計(jì)算出從每個(gè)點(diǎn)向下的最長(zhǎng)路f和次長(zhǎng)路g點(diǎn)u的最長(zhǎng)路可能是直接向下的(fu),也可能是向上之后再向下(設(shè)為hu)怎么計(jì)算H ?最長(zhǎng)路 : 推廣樹形DP的推廣不一定是在樹上進(jìn)行的DpSDOI2010 Area題意:最大權(quán)獨(dú)立集30%數(shù)據(jù):圖是一棵樹Dp70%數(shù)據(jù):圖是基環(huán)+外向樹的結(jié)構(gòu)如果只有環(huán)該怎么做?100%數(shù)據(jù):仙人掌樹形DP大多數(shù)題目的套路是一樣的自底向上
7、自頂向下在狀態(tài)中維護(hù)額外的信息點(diǎn)分治題目選講樹網(wǎng)的核NOIP2007, modified給定一棵邊帶權(quán)的樹,求出一條長(zhǎng)=W的路徑,使得到路徑距離最大的點(diǎn)的距離最小N = 300000Next樹網(wǎng)的核Hint證明:最優(yōu)方案可以是直徑的一段直徑的優(yōu)美性質(zhì)Next樹網(wǎng)的核Solution求出直徑對(duì)直徑上的點(diǎn),計(jì)算disLeftx=x左端所有結(jié)點(diǎn)到x距離的最大值disRightx 同類disDev x=到直徑的入口為x的所有點(diǎn)與x距離的最大值枚舉+二分或單調(diào)隊(duì)列計(jì)算答案O(NlogN)或O(N)NextSPOJ PT07B給定一棵樹,找到它的最大的滿足以下條件的子樹:所有度大于2的點(diǎn)至多被兩個(gè)度大于1
8、的點(diǎn)連接.N=100000NextSPOJ PT07BSolution“毛毛蟲”如果毛毛蟲沒有足?最長(zhǎng)路“足”的數(shù)目可以被附加到點(diǎn)上!設(shè)點(diǎn)u的權(quán)值為degu-1去掉所有權(quán)=0的點(diǎn)帶權(quán)最長(zhǎng)路NextSPOJ PT07F樹的最小路徑覆蓋選出數(shù)目最少的不相交路徑,使得每一個(gè)節(jié)點(diǎn)都在一條路徑上N=100000NextSPOJ PT07FsolutionNextSPOJ PT07I一棵樹上有m個(gè)螞蟻窩螞蟻i會(huì)在時(shí)刻Ti從窩Si里出來,以速度vi向窩Sj出發(fā)問有多少對(duì)螞蟻在路上相遇M=1000, N 稍微提一下常見方法點(diǎn)分治邊分治塊分治(樹塊剖分)鏈分治(樹鏈剖分)Next點(diǎn)分治選擇一個(gè)點(diǎn)將無根樹轉(zhuǎn)為有根樹遞歸處理去掉根之后的每一棵子樹例題給定一棵樹,點(diǎn)上帶權(quán)求出所有長(zhǎng)度=k的路徑Next點(diǎn)分治 Cond選一個(gè)根之后,路徑可以分為經(jīng)過根和不經(jīng)過根的兩種經(jīng)過根的情況計(jì)算出當(dāng)前子樹中所有點(diǎn)到根的距離,用排序+掃描的方法求出和 deprootb)Res = max(res, dataa) / dataa表示到塊根的最大權(quán)值A(chǔ) = prerootaElseRes = max(res, datab)B = prerootbWhile (a != b)If (depa depb
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 錦綸纖維的抗菌防螨技術(shù)考核試卷
- 霧凇的自然奧秘四年級(jí)語文課
- 蘇教版生字表
- 一年級(jí)上冊(cè)人教版多音字讀音指南
- 課后練習(xí)蘇教版角的認(rèn)識(shí)鞏固知識(shí)要點(diǎn)分析
- 蘇教版負(fù)數(shù)教學(xué)目標(biāo)與方法解析
- 比的認(rèn)識(shí)北師大版教材的深度解讀
- 外研版七年級(jí)英語下冊(cè)教案創(chuàng)新實(shí)踐
- 三年級(jí)上冊(cè)北師大版數(shù)學(xué)教學(xué)方法分享
- 人教版哈姆雷特復(fù)仇與親情紛爭(zhēng)
- 中華民族現(xiàn)代文明有哪些鮮明特質(zhì)?建設(shè)中華民族現(xiàn)代文明的路徑是什么?參考答案
- 2024至2030年中國(guó)表皮生長(zhǎng)因子行業(yè)深度調(diào)查與前景預(yù)測(cè)分析報(bào)告
- 2024年山東“大學(xué)習(xí)、大培訓(xùn)、大考試”試題庫(kù)
- 微寫作-2024年高考語文二模試題分類匯編(北京專用)(解析版)
- 某電力公司薪酬管理制度全套
- 國(guó)家中醫(yī)藥管理局發(fā)布的406種中醫(yī)優(yōu)勢(shì)病種診療方案和臨床路徑目錄
- 2024年國(guó)防知識(shí)競(jìng)賽題庫(kù)及答案
- Abby’sDiary阿比的日記PPT課件
- 偷盜行為主題班會(huì)教育
- 沼氣工程技術(shù)原理
- 俄羅斯系統(tǒng)使用技巧
評(píng)論
0/150
提交評(píng)論