算法题示例
算法题示例
给定一个数组,找出其中位数
. 就题目中不清楚的点与面试官进行沟通
数组中元素的数据类型?
. 数组是否存在重复元素
-数组的规模?
给定一个数组,找出其中位数
给定- -个不存在重复元素的int类型数组,找出其中
位数。数据规模n < 1,000,000
第一种思路:排序,找中间数。
第二种思路:分堆,找出数组一半的数,或者是大于中位数的一组,或是小于中位数的一组,
用堆来实现的算法,数据量小可以用排序的方式,投入产出比高;
数据量非常大,那么可以用数据库的工具来解决;
做题之前,这些都要和面试官交流
测试的步骤,不要等着,自己主动写测试,代码不写错的只有三分之一的面试者。
测试场景的设置,最大和最小的数组来测试,100万的要求,0的正常返回,奇偶数的测试也是不同的。
这个还是非常让我有体验的。
即使代码写不出,你和面试官的沟通,也会带来不同的效果。
对本节课的总结。