针对本科和硕士应届生的算法面试题
1、假设淘宝一天有5亿条成交数据,求出销量最高的100个商品并给出算法的时间复杂度。维护一个前100大的最小堆,然后遍历一次O(nlogk),显然当n很大时候效率也不是很高,2、给一列无序数组,求出中位数并给出算法的时间复杂度。中位数即是排过序后的处于数组最中间的元素。 不考虑数组长度为偶数的情况。设集合元素个数为n。简单的想了下:思路1) 把无序数组排好序,取出中间的元素