2018阿里中间件部门C/C++岗在线测评

今天我们看到的阿里巴巴提供的任何一项服务后边都有着无数子系统和组件的支撑,子系统之间也互相依赖关联, 
其中任意一个环节出现问题都可能对上游链路产生影响。小明做为新人接收到的第一个任务就是去梳理所有的依赖关系, 
小明和每个系统的负责人确认了依赖关系,记录下调用对应系统的耗时,用这些数据分析端到端链路的数目和链路上最长的耗时。

输入: 小明搜集到的系统耗时和依赖列表 
5 4 // 表示有5个系统和 4个依赖关系 
3 // 调用1号系统耗时 3 ms 
2 // 调用2号系统耗时 2 ms 
10 // 调用3号系统耗时 10 ms 
5 // 调用4号系统耗时 5 ms 
7 // 调用5号系统耗时 7 ms 
1 2 // 2号系统依赖1号系统 
1 3 // 3号系统依赖1号系统 
2 5 // 2号系统依赖5号系统 
4 5 // 4号系统依赖5号系统

输出: 调用链路的数目 和最大的耗时, 这里有三条链路1->2->5,1->3, 4->5,最大的耗时是1到3的链路 3+10 = 13,无需考虑环形依赖的存在。 

 

体会:半小时是真做不出来,想了集中办法都有问题,多刷题多刷题。

思路:建一棵孩子兄弟树能够包括所有情况,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值