最好的推荐给最美的你

写在开始

我一路走来,不念过去,不畏将来。

感谢叶神创造了牛客网,受益匪浅,跟下面推荐的书籍、视频一起,表达谢意。

目前拿到的offer有,百度大搜(sp、上海)、美团酒旅(S级、北京上海可选,求职体验最好)、好未来学而思(SSP、北京)、招银网络(杭州)、携程机票(上海)。最后选择了百度。

既然写在开始,希望大家放平心态,不要装逼不止、不要妄自菲薄。有清北找工作成绩平平的,有一般学校找到很不错的工作的,人这一辈子,拼的是个时间,是份坚持,慢慢走,不要着急。

楼主本科东南,硕士北航,自动化专业,非科班出身,本没有想过会走上程序员这条路,也是机缘巧合吧,大四的时候,跟清华经管女友分手,重新思考人生,走着走着就习惯了。另外,也感谢东南的几个大哥,曾经的指导和帮助。

愿那个努力的你,终将收获所得。

心中无敌,无敌于天下(《毛骗》里的话,经典)。

资料推荐

为什么要写这样一个推荐?发现牛客太多的面经笔经质量参差不齐,但成体系的推荐资料不多,希望能来一波溯本清源的推荐。在这里不求最全,但求都是自己真正看完,最实用,最爽,最感动的。

那一堆面经笔经,列出一堆题目,想必你也不会一个一个看,看完你不去找答案也是浪费时间。最好的办法就是先自己系统的学,然后多面几家找找感觉,所以越早准备越好,晚了也别着急,我给你推的资料,怕是能起死回生[捂脸]。

想清楚自己找的岗位,到底是算法还是研发,面试区别不小。

另外,选研发岗的话,假如简历提到多种语言,面试官肯定会问你是要选C++,还是java面?说个小经验吧,我回答的是,本科时候接触过Java,不过后来用 C ++ 多些,熟一些,用 C ++ 来面吧。

注意:你针对的是找工作,不要看什么汇编了,自己有兴趣以后在研究,面试的时候真的不实用!!!

最核心的无非:

  • 你选定的面试语言的语法基础。
  • 数据结构与算法。
  • 数据库,语句可牛客刷题,理论会问到 ACID、CAP、事务、数据库优化、四种连接。
  • 设计模式,看不完所有,得会常用的几个,如:单例模式、工厂模式、观察者模式、享元模式。
  • 计算机原理中的某几个点,如进程线程状态,参考下面推荐的书前两本,额外的自己再去拓展。

刷题

  • 强推牛客,也用过别的几个平台,最爽的只有牛客,没有之一。
  • 很全,建议除了刷《剑指offer》,还要刷一下《数据库SQL实战》,别的华为的题可以练习下输入输出流的处理。其他题目,当然刷的越多越好,但是,你要结合看书,以及别的知识点来。所以,我先只推了前面两个。

书籍

  • 《王道程序员求职宝典》,强推,一定要看完。
  • 《程序员面试宝典》,强推,虽有个别错误,但是看下来总体感觉良好。可以和上面王道一起看,查缺补漏。如:自己写String类的例子,就非常棒。
  • 《redis设计与实现》,这个如果你用过非关系型数据库,但是不太清楚原理,可以看看。假如你简历提到,还是挺能吸引面试官的。
  • 《C++ primer》第四版编排更合理,第五版加入了 C++11 新特性。这本书要看要尽早,如果来不及的话,拼全力看最前面两本。
  • 《剑指offer》其实我觉得直接用牛客刷题即可,特别有兴趣的题目再来看这本书某一题。
  • 《effective C++》有额外时间可以看,但是对于找工作来说,核心在前面几本。
  • 什么《数学之美》《编程之美》等可以看,但是请把重心放在前面几本书,兄弟,你要找的是工作不是情怀。
  • 其他还有很多不错的编程书籍,但是不推了,同志们,抓住主要茅盾,找工作,找工作,找工作。

视频

  • 小甲鱼的视屏强推,喜欢看视频学习的一定要看。特别是《带你学C带你飞》、《数据结构与算法》、《C++》。前面基础如果都会了,可以挑几集查缺补漏,比如 IO缓冲区、进阶typedef 等。视频全免费,如果觉得好,记得支持作者,买个终身会员。
  • 如果选面 Java 和 python 的同学,可以看牛客始祖叶神的 Java 和 python 项目,挺***的。
  • 若是选PHP的同学,兄弟连的《linux》和兄弟连高洛峰的《PHP》课程还是非常棒的,以及高洛峰的书《细说PHP》最新版《跟兄弟连学PHP》。

我特别不同意那种只推荐看书,觉得看视频low的观点。如果是吹牛逼的讲座视频当然没啥意思,但是那种真正用心做的视频,一点不比书差,而且你也能跟着得到相应的思考。关键还是看自己的兴趣吧。用心去看。

博客

写在最后

前人列过的面经题目题目太多了,说个别人可能遗漏的吧。

  • 刷题的时候,都有写过二叉树的 递归/非递归 前/中/后 序遍历对吧,但是,想必你是在OJ平台里只写了遍历函数,没有自己从头到尾,从建树,到遍历完,并且按格式打印出来对吧?试试吧。我曾经刷题时就突发奇想想到这个问题,无聊了自己用C++写了一份,没想到,在线面试的时候竟然用到了,就是让从头到尾自己写,没有任何前置代码。网上查过,没有很好的完整代码。下面有我自己写的,供参考。
  • 同理,自己建链表,并且反转,完整代码。
  • 大数据的问题,核心思想是分治、hash、利用位数组、布隆过滤器就这四种了。网上搜一下准备一下即可。
  • 还有一个,感觉挺爱问,这个可以提前准备一下。数据库里面索引(原理)用什么结构,有些面试官你回答到B树即可,有些会追问为什么用B+树,而不用B树。
  • 红黑树,一般不会让你写,但是要知道应用场景,如:STL的map和set的内部实现就是红黑树。
  • 开头多面几次,增加经验,失败了不要气馁,稳住,你能赢。把面试题目都做个记录,不会的该查了研究的,一定要去查,很有用。记得美团二面的时候,面试官直接说一面面试官问过你的某某问题,我再深入问问你。。。还好准备了。。。

还是贴出代码吧,给你省点时间多看点书[捂脸]

非递归后序遍历二叉树,含建立、打印

#include <vector>
#include <stack>
#include <iostream>
using namespace std;
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
// 用前序遍历数组来创建这颗二叉树
TreeNode* buildTree(int *preOrder, int & index) {
    int value = preOrder[index++];
    if(0 == value)
        return NULL;
    TreeNode* root = new TreeNode(value);
    root->left = buildTree(preOrder, index);
    root->right = buildTree(preOrder, index);
    return root;
}
/*
函数功能:实现二叉树的后序遍历
参数:
root是传入的二叉树的根节点
res向量用来保存后序遍历的值
*/
void aftOrder(TreeNode* root, vector &res) {
    if(root == NULL)
        return;
    stack stk1;
    stack stk2;
    stk1.push(root);
    TreeNode* cur = NULL;
    while(!stk1.empty()) {
        cur = stk1.top();
        stk1.pop();
        stk2.push(cur);
        if(cur->left)
            stk1.push(cur->left);
        if(cur->right)
            stk1.push(cur->right);
    }
    while(!stk2.empty()) {
        res.push_back(stk2.top()->val);
        stk2.pop();
    }
    return;
}
int main() {
    const int N = 11;
    //cin >> N; // 输入节点个数,含NULL,0代表NULL
    int preOrder[N] = {1, 2, 0, 5, 0, 0, 3, 4, 0, 0, 0};  // 若是没有子节点了用0来结束
    //for(int i = 0; i < N; i++) {
    //    cin >> preOrder[i];
    //}
    int index  = 0;
    TreeNode* root = buildTree(preOrder, index);
    vector res;
    aftOrder(root, res);
    for(int i = 0; i < res.size(); i++)
        cout << res[i] << " ";
    return 0;
}
  • 若要求自建链表,同理,比上面简单点。
#百度##携程##美团##C++工程师##算法工程师#
全部评论
谢谢给最美的我
1 回复 分享
发布于 2017-10-26 15:47
好久没上牛客了,一刷就看到了学长的帖子~
点赞 回复 分享
发布于 2017-10-26 05:51
干货!
点赞 回复 分享
发布于 2017-10-26 07:42
是不念过去,不畏将来啦
点赞 回复 分享
发布于 2017-10-26 08:24
稳!
点赞 回复 分享
发布于 2017-10-26 08:33
点赞 回复 分享
发布于 2017-10-26 08:47
点赞 回复 分享
发布于 2017-10-26 10:25
稳,大佬
点赞 回复 分享
发布于 2017-10-26 12:18
很给力
点赞 回复 分享
发布于 2017-10-26 12:49
已收藏~感谢
点赞 回复 分享
发布于 2017-10-27 21:10
面的c++岗位么
点赞 回复 分享
发布于 2017-10-27 21:10
谢谢大佬啦
点赞 回复 分享
发布于 2017-12-03 16:51
大佬就是大佬! 曾有幸**大佬,荣幸荣幸!
点赞 回复 分享
发布于 2017-12-03 22:14
大佬!!!
点赞 回复 分享
发布于 2017-12-04 09:27
校友你好,九龙湖计算机楼膜拜学长师兄。写的很好,很多细节都说的很明白。照着前辈的好好准备,谢谢。
点赞 回复 分享
发布于 2017-12-23 09:27
同北航硕士 非CS 想问问学长没有项目经历的问题是怎么解决的 看好多手说面试会详细的问起项目经历
点赞 回复 分享
发布于 2017-12-27 13:33
上海百度怎么样?做什么的。
点赞 回复 分享
发布于 2017-12-29 16:17
大佬 数据库实战 是哪本书
点赞 回复 分享
发布于 2018-01-06 06:53
美团点评,成都、北京、上海招java后台工程师、前端工程师,可内推。20-40K。扣扣:360841519,要求你的算法基础好、java功底不错、有互联网经验。 成都是美团刚开个分基地,目前刚启动,机会多。如果你在成都做java,除了蚂蚁就来美团吧。
点赞 回复 分享
发布于 2018-01-19 17:37

相关推荐

点赞 评论 收藏
分享
我即大橘:耐泡王
点赞 评论 收藏
分享
评论
48
330
分享
牛客网
牛客企业服务