注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
早上电面,题不难,都写出来了,但还是挂了,稀里糊涂的,后来回想应该是一些follow up没答好的缘故。面试的是个美国人。具体如下:第一题:是否有连续的sub数组何为target。我的代码:
public boolean containsSum(List<Integer> list, int target){
if(list==null) return false;
HashSet<Integer> set = new HashSet<>();
int sum = 0;
for(int i=0; i<list.length(); i++){
sum = sum+list.get(i);
set.add(sum);
if(set.contains(sum-target)) return true;
}
return false;
}
后来问时空复杂度n,n。又问哪句会造成算法是n方。我没想出来,他说您好! 本帖隐藏的内容需要积分高于 188 才可浏览 您当前积分为 0。 使用VIP即刻解锁阅读权限或查看其他获取积分的方式 游客,您好! 本帖隐藏的内容需要积分高于 188 才可浏览 您当前积分为 0。 VIP即刻解锁阅读权限 或 查看其他获取积分的方式
return ret;
}
问时空复杂度,问写的这个叫什么approach,我说level order,问还叫什么我说breadth first。ok。这题应该没问题。
稀里糊涂挂了以后问hr有何feedback,只说加强cs fundamental。
补充内容 (2015-4-22 11:58):
其实第一题有个bug,面试官当时也没发现,就是应该先set.add(0);
补充内容 (2015-10-20 04:56):
第一题有个条件,数组里的数都是正数 |