华为4.26笔试
大二萌新表示好难啊。。看大佬们解析说的高级技巧我都没见过
只用了最简单的数据结构
刷了160多道力扣,结果发现导致自己不会处理输入的数据

,笔试的时候花了很久时间
第一道题用了一个map。key是某个module,value是以这个module为依赖的其他module组成的vector。从没有以他为依赖的module们开始一直迭代,记录visited,到最后如果visited里面还有没visit到的,就说明有环~
但是只beat了95%

说cpu用完了,我也不知道这是啥意思该咋debug

不知道这是算95分还是0分

第二题。我用queue数据结构当作buffer的。但是c++的queue不能遍历就很难搞。。于是我想的办法是,如果要删除queue中某一个元素,不去真的删除他,而是给他的标记数加一。用两个map,一个记录在不在buffer中,另一个记录标记数。最后beat100%了!
第三题直接输出0然后beat3%哈哈

刷了160多道力扣,结果发现导致自己不会处理输入的数据
第一道题用了一个map。key是某个module,value是以这个module为依赖的其他module组成的vector。从没有以他为依赖的module们开始一直迭代,记录visited,到最后如果visited里面还有没visit到的,就说明有环~
但是只beat了95%
第二题。我用queue数据结构当作buffer的。但是c++的queue不能遍历就很难搞。。于是我想的办法是,如果要删除queue中某一个元素,不去真的删除他,而是给他的标记数加一。用两个map,一个记录在不在buffer中,另一个记录标记数。最后beat100%了!
第三题直接输出0然后beat3%哈哈
全部评论
400道Java选手 被第二道直接心态搞无 已寄
第一题两个unordered_map,分别记录依赖和被依赖的id。
第二个题用双向链表+map。
请问下为什么要两个map呢?记录标记数的map是不是也是用来判断在不在buffer中的?
大佬,你第二题两个map是怎么判断的,有代码吗
第一题是拓扑排序模板题,*****
大二还可以投华子实习吗?
相关推荐
点赞 评论 收藏
分享