由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 一道面试题。
相关主题
周末上道题Onsite面试题几道
题都感觉做对了,面试的人也满意,为什么二面过后还是直接悲剧呢……顺便上P面经sliding window面试题
leetcode 上的k way merge请教一个排序的问题
问个题。ihas1337一道题没看懂
问一道算法题,find min in the last k elements问一道facebook的面试题
自己设计的一道面试题求教移除数组重复元素的时间复杂度!!
已知数组中每个元素距离排序以后的位置最多是k,排序该数组周末上道题
[google面试题] API流量控制刚看到的一道google面试题
相关话题的讨论汇总
话题: 数组话题: 元素话题: 内存话题: heap话题: 排序
进入JobHunting版参与讨论
1 (共1页)
C****t
发帖数: 2
1
给定存有一个整数组的 binary file,数组长度不定。设计一个程序读取这个文件,找
出这个数组中最大的K个元素并排序,同是记录这个数组最后的K个元素。要求首先考虑
内存优化,其次运算速度。
我的做法是首先从文件中读取K个元素,如果数组长度不大于K,则直接排序。否则先找
出这个数组中最小的元素,然后从文件中读取下一个元素,比较后替换最小值。依次进
行直到文件结束,然后再统一排序。同时把数组的最后K个元素存在一个QUEUE里。
不确认是不是最优解法,欢迎大家讨论。
d****n
发帖数: 12461
2
use a K min heap比用你的k array效率更好。
s**x
发帖数: 7506
3
K 很小, 应该是标准的 min heap with K elements, nlogK.
K 很大, 但内存放得下, selection sort, O(n)
内存放不下, 挺麻烦。
你没提到 heap, 10 分 给你 3 分吧。
C****t
发帖数: 2
4
不是码工职位,内存有限,复杂的数据结构和算法或许不能满足要求?

【在 s**x 的大作中提到】
: K 很小, 应该是标准的 min heap with K elements, nlogK.
: K 很大, 但内存放得下, selection sort, O(n)
: 内存放不下, 挺麻烦。
: 你没提到 heap, 10 分 给你 3 分吧。

w*****d
发帖数: 105
5
k个数能放内存的话,heap+deque;
放不了内存,则遍历多次,还是heap+deque,每次得到N个最大和N个最后(假设N个能
放内存),共需要k/N趟。
1 (共1页)
进入JobHunting版参与讨论
相关主题
刚看到的一道google面试题问一道算法题,find min in the last k elements
请教一道面试题自己设计的一道面试题
请教一道C++面试题已知数组中每个元素距离排序以后的位置最多是k,排序该数组
google面试题,算烂题么?[google面试题] API流量控制
周末上道题Onsite面试题几道
题都感觉做对了,面试的人也满意,为什么二面过后还是直接悲剧呢……顺便上P面经sliding window面试题
leetcode 上的k way merge请教一个排序的问题
问个题。ihas1337一道题没看懂
相关话题的讨论汇总
话题: 数组话题: 元素话题: 内存话题: heap话题: 排序