- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
主题TreeProblems
主題: Tree Problems Tree structures Rooted trees 例題講解: H.90.2, A.615 Binary trees 例題講解: A.536, A.699 Undirected trees 例題講解: A.10459 歷年題目 Trees Rooted trees Terminology Terminology (cont.) Representation parent 陣列: parent[i] 記錄第 i 個 node 的 parent 是哪一個 node children 陣列: children[i] 記錄第 i 個 node 的 children list Representation Children lists 將 children list 集中存在一個陣列內 按照出現順序直接將每個 child 放到 edge 陣列中,並用 sibling 陣列記錄每個 child 在 children list 的下一個 node Children lists (sorted) 將 children list 集中存在一個陣列內 將屬於同一個 parent 的 children list 集中連續放置,每個 node 記住自己的 children list 在 edge 陣列所在的位置及 children 個數 常見的 input 格式 所有 edges 以任意順序輸入,如:(2, 9), (4, 7), (2, 8), (4, 6), (0, 1), (0, 2),(8, 10), (1, 5), (1, 3), (9, 11), (1, 4) 有時候會規定一個 parent 的所有 children 在 children list 中的排列次序,如依 node id 的大小或是出現順序等等 如何整理成可用的 children list? 整理成 list 形式 last-child: last-child[i] 記錄 node i 已出現的 children 中,最後一個在 edge 陣列中的位置 要是又出現 node i 的 child,就可以把 sibling 接起來 整理成連續形式 對 edge 陣列做 sort,可以同時完成連續擺放與符合規定順序兩種效果 整理規則 (sorting) 當兩 edge 的 head (parent) 不同時 head 較小的放在前面 當兩 edge 的 head (parent) 相同時 題目如規定依 child 大小順序,由 tail 決定 題目如規定依出現次序,需記住出現次序加以比較或使用 stable sort 整理成連續次序 (cont.) 需額外記住每條 edge 的 head 以做比較 整理之前 整理之後 例題講解: H.90.2(.tw/info_race90/finalprogram.pdf) 給予一棵王室的家族樹,同一個父親的兒子年紀是由左到右遞減排序,將王位的繼承順位照順序列出 (包括現任) 繼承規則 當現任國王死後 先考慮其兒子,年紀由大到小 再考慮其弟弟,年紀由大到小 再來是國王父親的弟弟們,年紀由大到小 再來是國王祖父的弟弟們,年紀由大到小 如現任國王為 Charles,則接下來是:William, Edward, Adam, Benjamin,Peter, Chris, Bill Input format 先給予現任國王的名字 再來每次給予一對父子配對,如: Tom John,而且沒有一定的給予順序 同一個父親的兒子們,先出現的年紀較大,如:Tom JohnTom Charles則 John 的年紀 (順位) 大於 Charles 直覺想法 Re-labeling 把不能當作陣列 index 的文字 (或數字),轉換成範圍在 0 ~ n – 1 的 node index 準備一個文字的對應表 (mapping),每看到一個字串,就到表中查詢是否已經出現過,如果出現過就回報對應此字串的 index,否則就新增一筆對應資料 Re-labeling (cont.) CharlesPeter AllenCharles WilliamGeorge TomCharles EdwardTom JohnGeorge PeterTom CharlesTom AdamChris JamesGeorge ChrisTom Benjamin 例題講解: A.615(http://acm.uva.es/p/v6/615.html) 給一堆 edge (u, v),代表 u ? v,數量次序不拘,依照下列規則判斷是否為 rooted tree (假設 edge 方向由 pare
您可能关注的文档
最近下载
- 鹦鹉养殖与驯化.pdf VIP
- 2025届高考英语二轮复习:非谓语动词课件 (共49张PPT).ppt.pptx VIP
- 雕刻机快速调试使用指南教学文稿.pdf VIP
- 部编版小学四年级道德与法治上册期末复习全册必背知识点汇总(按单元整理).docx VIP
- 骨折术后护理查房.pptx VIP
- 《高校学生就业与创业指导》全套教学课件.pptx
- 2025年新高二数学专项提升(人教A版)暑假培优练04 直线与圆 (14大巩固提升练+能力提升练+高考专练) 学生版.pdf VIP
- 2026届高考数学专项复习:直线与圆.pdf VIP
- 第二章 直线和圆的方程 重点题型章末总结(14类热点题型讲练)原卷版-2025-2026学年高二数学(人教A版选择性必修第一册).pdf VIP
- 执业药师中药二单味药整理学习.pdf VIP
文档评论(0)