一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 578|回复: 5
收起左侧

[算法题] 第一次刷题,有些问题想请教

[复制链接] |试试Instant~ |关注本帖
kyjswh 发表于 2015-11-3 11:47:53 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
本人想换工作,最近开始刷leetcode。因为还没接触过正式的面试,有些地方搞不懂想请教一下版内的大牛们。
一般面试中考到要直接implement基本数据结构和算法的情况多吗?就是书本上的那种xx sort, linked list, heap, etc.我看leetcode的答案里很多都是直接调用内建函数的, 比如这道3sum的题:

public int threeSumSmaller(int[] nums, int target) {
    Arrays.sort(nums);
    int sum = 0;
    for (int i = 0; i < nums.length - 2; i++) {
        sum += twoSumSmaller(nums, i + 1, target - nums);
    }
    return sum;
}

private int twoSumSmaller(int[] nums, int startIndex, int target) {
    int sum = 0;
    int left = startIndex;
    int right = nums.length - 1;
    while (left < right) {
        if (nums[left] + nums[right] < target) {
            sum += right - left;
            left++;
        } else {
            right--;
        }
    }
    return sum;
}

是不是在真实面试中,只要不是直接让你实现,而是解题的过程当中需要用到sort或者其他数据结构的一些方法, 我们就可以都默认直接调用内建的?(我一直以为凡是用到sort就得当场implement).

zjrsysu 发表于 2015-11-3 12:11:39 | 显示全部楼层
可以直接用
不过面试官如果问你实现你也要能说清楚要点
回复 支持 反对

使用道具 举报

stellari 发表于 2015-11-3 16:46:32 | 显示全部楼层
一般都默认你这些基础数据结构都已经会实现了,因为数据结构的实现太基础,裸考这种东西区分度较低。但是,你自己必须掌握,因为有时会让你实现某个数据结构的高级版本,比如minStack和LRU Cache等。
回复 支持 反对

使用道具 举报

 楼主| kyjswh 发表于 2015-11-5 11:09:56 | 显示全部楼层
zjrsysu 发表于 2015-11-3 12:11
可以直接用
不过面试官如果问你实现你也要能说清楚要点

嗯,感谢!
回复 支持 反对

使用道具 举报

 楼主| kyjswh 发表于 2015-11-5 11:11:05 | 显示全部楼层
stellari 发表于 2015-11-3 16:46
一般都默认你这些基础数据结构都已经会实现了,因为数据结构的实现太基础,裸考这种东西区分度较低。但是, ...

謝謝!所以這些数据结构的方法都能默认拿来直接用吧?
回复 支持 反对

使用道具 举报

bin 发表于 2015-11-5 15:07:18 | 显示全部楼层
是的。除非面试官明确要求你写出来。

可以吧leetcode答案发我吗?谢谢
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-3 18:20

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表