欢聚时代算法A卷数据结构部分咋个写啊?

第一题是3个长约1024的无序列表,每个列表里没有重复元素,从每个列表中各取一个数生成三元组,输出加和Top 128的三元组。
我直接用了三个堆……感觉肯定不是最佳答案
第二题是只读哈希表……一点都不会#欢聚集团##笔试题目#
全部评论
分别对三个list进行快排,然后用最大堆的方法找topk。时间复杂度O(3nlogn)+O(klogk)。但是感觉不是最优解。
点赞 回复 分享
发布于 2019-09-09 22:55
我是按LeetCode上topk词频的思路写的,把所有的三元组及其和存到HashMap中,然后用一个堆遍历,最后堆里面保留topk即可。
点赞 回复 分享
发布于 2019-09-09 22:09
坐等答案,第一题我觉的好复杂啊。
点赞 回复 分享
发布于 2019-09-09 22:03
无序无重复,第一感觉是快排,1024 256这种数组,明显是求log2 x。比较得出最少的操作数,我也觉得是先排序再不停地取值,这是一开始的写法,后面又特么手贱改成了每次直接取最大。。我服我自己
点赞 回复 分享
发布于 2019-09-09 20:52
我是先对三个数组排序,然后各取前m个最大的。。。
点赞 回复 分享
发布于 2019-09-09 20:40
声明一下,我是啥都不会直接交卷了才过来问的……
点赞 回复 分享
发布于 2019-09-09 20:14

相关推荐

12-15 11:27
门头沟学院 Java
哇哇的菜鸡oc:所有人不要理会,就好了,后面他就知道怎么回事了,只能说有的时候市场都是被宰的人搞坏的
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务