文章目录

  • 题目描述
  • 解题思路
  • 代码实现
  • 参考文献

1600. 皇位继承顺序

题目描述

解题思路

1、哈希表保存父子间的关系
2、保存死亡名单
3、前序遍历多叉树获取继承顺序并排除已死亡人员

代码实现

class ThroneInheritance:def __init__(self, kingName: str):self.king = kingNameself.deathed = set()self.nodes = defaultdict(list)def birth(self, parentName: str, childName: str) -> None:self.nodes[parentName].append(childName)# brother = self.nodes.get(parentName, None)# if brother:#     brother.append(childName)# else:#     brother = []# self.nodes[parentName] = brotherdef death(self, name: str) -> None:self.deathed.add(name)def getInheritanceOrder(self) -> List[str]:self.ans = []def pre_order(name: str) -> None:if name not in self.deathed:self.ans.append(name)if name in self.nodes:for child in self.nodes[name]:pre_order(child)pre_order(self.king)return self.ans# Your ThroneInheritance object will be instantiated and called as such:
# obj = ThroneInheritance(kingName)
# obj.birth(parentName,childName)
# obj.death(name)
# param_3 = obj.getInheritanceOrder()

参考文献

官方题解

1600. 皇位继承顺序相关推荐

  1. leetcode 1600. 皇位继承顺序(dfs)

    题目 一个王国里住着国王.他的孩子们.他的孙子们等等.每一个时间点,这个家庭里有人出生也有人死亡. 这个王国有一个明确规定的皇位继承顺序,第一继承人总是国王自己.我们定义递归函数 Successor( ...

  2. LeetCode 1600. 皇位继承顺序(图的深度优先遍历)

    文章目录 1. 题目 2. 解题 1. 题目 一个王国里住着国王.他的孩子们.他的孙子们等等.每一个时间点,这个家庭里有人出生也有人死亡. 这个王国有一个明确规定的皇位继承顺序,第一继承人总是国王自己 ...

  3. LeetCode专题

    LeetCode解题笔记 前言 复习 树 数组专题 字符串专题 动规专题 哈希表 排序 每日一题 前言 前段时间因为考试等懈怠了,重新开始做题.决定专门开一篇博客迭代记录了,不然文章散乱. 339.除 ...

  4. leedcode——图数据结构相关2

    文章目录 31.省份数量 32.旋转盒子 解法:简单模拟 33.统计封闭岛屿的数目 解法一:DFS深度优先搜索 34.皇位继承顺序 解法:先序遍历:即DFS递归 STL知识 C++:move函数 35 ...

  5. 清亡之路(8):滦州兵谏:逼清廷就范

    在介绍滦州兵谏之前,先介绍一下新军. 将太平天国消灭之后,清朝的军队实际上已经是淮军了.淮军要比八旗.绿营强得多,但由于历史的惯性,淮军渐渐走上了绿营的老路,世袭为兵,军官克扣军饷,打仗毫无纪律.对付 ...

  6. 数学(持续更新、整理)

    两数相加:leetcode-2 Z字形变换:leetcode-6 整数反转:leetcode-7 Pow(x, n):leetcode-50 排列序列:leetcode-60 爬楼梯:leetcode ...

  7. ICLR 2019论文投稿近1600篇,强化学习最热门

    作者 | 非主流 出品 | AI科技大本营(公众号ID:rgznai100) ICLR 2019 的论文提交已经截止.根据官方消息,本届大会共收到近 1600 篇投稿,相比 ICLR 2018 的 9 ...

  8. 一年暴增1600万程序员!GitHub 2021年度报告发布:中国755万开发者排全球第二

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源丨新智元 编辑丨极市平台 导读 GitHub年度报告显示,去年全 ...

  9. 谷歌又发钱了!给全员发1600美元,包括外包和实习生!还宣布将无限期居家办公!...

    "别人家的公司"又又又双叒叕来了! 近日谷歌宣布将向全球员工发放额外奖金,包括额外聘请的员工和实习生,每人发1600美元或者等值的一次性现金奖金.这是谷歌在居家办公津贴和福利奖金之 ...

最新文章

  1. python自动化办公培训排名-盘点使用Python进行自动化办公所需要的知识点
  2. 【数据挖掘】分类任务简介 ( 分类概念 | 分类和预测 | 分类过程 | 训练集 | 测试集 | 数据预处理 | 有监督学习 )
  3. Windows MySQL8.0安装出错解决方案(Start Server 失败)
  4. no instance(s) of type variable(s) X exist so that DataSource<X> conforms to DataStream<Order>
  5. Repeater嵌套绑定Repeater
  6. python生成泊松分布随机数_Python Numpy random.poisson() 泊松分布
  7. 云服务器装teamviewer
  8. #55 #56 #58 #59 #60 #66
  9. java方法不写访问权限_【JAVA小白】 问关于访问权限的问题,写接口遇到错误
  10. Lesson_6 作业_1 ---- 封装学生类
  11. python3.6.5 安装第三方库
  12. linux 文件名加粗,konsole与用粗体绘制强调色
  13. 802.1x 命令说明以及配置方法
  14. Exchange2013中POP3和IMAP4
  15. 电子工程师英年早秃?离高阶茂密工程师你只差这套工具!
  16. Android 内存被异常回收后直接重启APP
  17. Win10、Win7定时开关机
  18. 网格设计版式设计_网页设计展示精美的版式
  19. 一种简单的图形旋转算法
  20. 全球与中国菱镁矿和水镁石市场现状及未来发展趋势

热门文章

  1. 关于java二维数组长度(length)的知识
  2. wsus无法获取计算机,客户端不能从WSUS服务器取得更新故障
  3. 记淘宝客、多多客api开发系列。一、淘宝联盟淘宝客api对接
  4. 自考计算机应用与辅助设计,黑龙江自考“计算机应用与辅助设计”考试大纲.doc...
  5. qnx如何和Android传递数据,QNX操作系统下MDSL数据记录和转存的研究与实现
  6. 测试人员如何使用浏览器的f12_如何使用 F12 开发人员工具调试网页
  7. 如何在Windows 10中调整开始菜单的大小
  8. php如何设置随机数,php怎么设置随机数
  9. 检索框/输入框测测试用例
  10. 中医祛斑有面子不留痕