JD面试

来源:互联网 发布:5g网络架构 杨峰义pdf 编辑:程序博客网 时间:2024/06/11 06:35

今天回jd 面试了,面了两面,感觉还可以,但是这也暴露出自己coding能力确实不行的问题。

首先说coding吧
第一面只有一道题,leetcode原题,可以看我博客
http://blog.csdn.net/gdmmzmj/article/details/68485327

第二面面了快排

// quick sorttemplate <typename DataType>void quick_sort(vector<DataType>& v, int first, int last){    if(first>=last)        return;    DataType pivot = v[first];    // 小的换到左边,大的换到右边    int l=first;    for(int r=l+1;r<=last;r++){        if(v[r]<=pivot)            swap(v[++l],v[r]); // l之前的都是小的    }    int pos = l;    swap(v[first],v[pos]);    // 递归    quick_sort(v,first,pos-1);    quick_sort(v,pos+1,last);}template <typename DataType>void quick_sort(vector<DataType>& v){    quick_sort(v,0,(int)v.size()-1);}

还有树的深度

int treedepth(TreeNode* root){    if(!root) return 0;    int depth=max(dfs(root->left),dfs(root->right))+1;    return depth;}int dfs(TreeNode* root){    if(!root) return 0;    return max(dfs(root->left),dfs(root->right))+1;}

第一面
零零散散问了一些。
比如OCR里面的图片,比如京东研发四个字,固定stepsize划分为几个字再抽取特征好,还是整体抽特征好。我觉得是整体好,因为balabala… 面试官说他们试的确实是这样。
还有c++知识

void sort(vector<int> v)

假如v是个很大的vector,那么在实际工程中应该怎么修改函数接口。我说加const,和&引用。应该是正确的,按照反应来看。

然后是一些项目问题,就没啥了。

第二面面试官没怎么做过deeplearning,主要面试机器学习,就是李航那本书。
就是推导SVM,写lr的loss function,有意思的是问了lr里面公式为啥用e,我觉得是跟生物学上有关,也跟log底数是e有关,具体不清楚。
决策树也问了,没回答上决策树做回归的方法,还有决策树算法的种类。
问了一下linux操作,替代top查看内存的指令。另外,有没有自己写过shell脚本,这个问题在各个面试中至少被问了三次。

大概的情况就是这样了,后面老大面就是随便聊聊,等hr了说。

原创粉丝点击