LeetCode 1257. 最小公共区域(最小公共祖先)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 1257. 最小公共区域(最小公共祖先)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
給你一些區(qū)域列表 regions ,每個列表的第一個區(qū)域都包含這個列表內(nèi)所有其他區(qū)域。
很自然地,如果區(qū)域 X 包含區(qū)域 Y ,那么區(qū)域 X 比區(qū)域 Y 大。
給定兩個區(qū)域 region1 和 region2 ,找到同時包含這兩個區(qū)域的 最小 區(qū)域。
如果區(qū)域列表中 r1 包含 r2 和 r3 ,那么數(shù)據(jù)保證 r2 不會包含 r3 。
數(shù)據(jù)同樣保證最小公共區(qū)域一定存在。
示例 1: 輸入: regions = [["Earth","North America","South America"], ["North America","United States","Canada"], ["United States","New York","Boston"], ["Canada","Ontario","Quebec"], ["South America","Brazil"]], region1 = "Quebec", region2 = "New York" 輸出:"North America"提示: 2 <= regions.length <= 10^4 region1 != region2 所有字符串只包含英文字母和空格,且最多只有 20 個字母。來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/smallest-common-region
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
2. 解題
- 用哈希表記錄每個子節(jié)點的父節(jié)點
- 先把 r1 的父節(jié)點全部存到 f1 中,包含 r1 自己
- 然后 r2 往上找父節(jié)點,父節(jié)點在 f1 中就找到了
148 ms 28.7 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關(guān)注我的公眾號(Michael阿明),一起加油、一起學(xué)習(xí)進步!
總結(jié)
以上是生活随笔為你收集整理的LeetCode 1257. 最小公共区域(最小公共祖先)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天池 在线编程 数组游戏
- 下一篇: 阿里云 超级码力在线编程大赛初赛 第4场