算法学习树形dp

树上结点间最大距离
info(maxdistance,height)
basecase 叶(0,0)
maxdistance=
1)结点参与 左树高+右树高+1
2)结点不参与 max(左树最大距离,右树最大距离)
height=max(height)+1
 

最大快乐值:员工关系呈现树状,老板作为根结点,上级来了直属下级不能来(隔代来)

1)X来  X乐+累加 max(下级来,下级不来)
2)X不来 0+累加 max(下级来,下级不来)
basecase return(x.happy,0)

Morris遍历
空间复杂度为N的遍历,线索二叉树,只到达两次
第一次为先序,第二次为中序,第二次时逆序打印左树右边界为后序(最后单打印整树右边界)
维护cur和mostright
1)无左孩子,cur右移动
2)有左孩子,找到左树的mostright,右孩子 A:若指向空,改指向cur,cur左移。B:若指向cur,改指向null,cur右移
3)  cur为空停止

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值