首页 > 笔经面经 > 怕是要来回报一下牛客网了

怕是要来回报一下牛客网了

头像
newJava()
发布于 2016-12-16 10:39:43
回复8 | 赞 18 | 浏览5608
嗨呀 一直想写面试经历,因为牛客很多厉害的人
也不知道能不能帮到大家,所以一直没写。今天算是鼓起勇气了吗?当然有说的不对不好的地方请大家多多指教把
先说说我把 资料里的学校当然是乱写的 我只是一个普通的一本本科生, 也没什么项目经验,只有自己做的小项目
所以关于项目的问题我觉得我还是别提好了。能讲清自己所做的项目为什么要选择这种语言,框架 有什么好处吗?
能做什么业务拓展,哪里能做技术拓展,再者就是各种高并发的情形下如何维持系统的性能
我9月份报了很多公司 也面试了很多大公司吧 也不一一列举了。嗯 9月份拿到offer后我就没有继续找工作了。
因为的确时间隔得很久了 所以哪些问题对应哪些公司其实我也不太记得了 我就说下我印象很深刻的题目把
线程和进程:这是个常谈的问题,很容易答出来,却也是最难答好的,因为网上有很多答案,很容易就背诵下来,但我觉得还是有自己的理解更好把
毕竟来说 线程+进程说浅很浅 说深又能很深,如果能就比如通信,效率,应用场合给出自己更深的理解才是加分的把。
再就是进程调度算法,内存分配算法, 各自的调度算法,优点和缺点 还有个公司问了我 磁盘的调度算法。
操作系统其实都大同小异 ,注重深度的同时顾及一下广度
网络是最让人头疼的因为很多问题就是我知道我知道 但是我不知道该怎么回答;
首先就是1.三次握手四次挥手 为什么要这样做?
2.客户端出故障了,服务器会怎么处理。这个课本就有吧,保活计时器
3.应用层如何在保证不在运输层多取数据.这个题问题我也描述不清,我回答的是在开头的数据代表总长度,或者在尾部加上类似c++ '\0'的结尾
4.udp和tcp的区别,为什么说Udp是面向报文,哪些协议用了udp,又有哪些用了tcp。
5.http和https的区别,http的流程, 为什么http是tcp协议还说他是无状态的。
6.因为我也用网络写过项目,然后面试官问了一些关于c++网络编程的问题;也只是大体流程而已
网络其实问了很多 我翻翻书 也实在想不起还问了什么,我觉得网络是最简单也是最难的,很容易记住也很容易忘记 所以还是多巩固把

我大多数都是应聘的c++
c++面试题就很普遍了 
1.面向对象的语言当然少不了封装继承多态,以及其表现形式,以及优势
2.面向对象还会涉及到设计模式,最后有几个熟悉的设计模式,一般手写我觉得单例多,
因为单例代码量少,面试官看起来也简单,我觉得java枚举实现单例可能可以加分?
3.函数表的实现,重写重载覆盖等;
4.多继承带来哪些问题? 
我答得问题是菱形继承问题,然后问了一下如何解决;
5.c++重载底层是如何实现的;
底层其实会根据参数扩展函数名。
6.结构体内存对齐的问题,有哪些限制 #pragma pack(n)的用处
7.手写宏定义,宏定义看起来用起来都很简单 一到让我手写我就懵了。
8.c++和java的区别 优势和劣势,为什么选择c++?

当然有些公司没有c++ 我也面试过一些java;
java 大多都是先问容器,arraylist和linkedlist;
hashmap和hashtable; hashmap怎么支持null key;
jvm 应该问的差不多,内存分配,gc算法,垃圾回收器,泛型擦除
(因为我找的都是c++的工作,这些我就看了一本深入理解java虚拟机)
再就是同步的问题;
再就是一个数组实现栈 判断是否出现了内存泄漏;

因为我没什么大项目经验 ,所以手写代码还是蛮多的
首先感谢牛客网,感谢左神!!!
1.反转字符串 i am a student. 反转成 student a am i;
2.Ip地址,怎么快速判断一个ip地址是不是在比如192.168.1.1-192.168.10.253范围呢;(当然ip地址是不是合法)
3.链表排序 插入排序,再就是类似快排(说到快排,还有就是手写非递归的快排)
4.还有就是https://www.nowcoder.com/practice/f26698ae586b46428c87a5dbcdae272c?tpId=49&tqId=29345&tPage=1&rp=1&ru=/ta/2016test&qru=/ta/2016test/question-ranking
类似这样的问题,一般我都会先写一个暴力的,然后面试官问能不能优化的时候 写个快速矩阵幂的方法;
5.树的前序,中序,后序遍历, 当然一般先写个非递归的方法,然后讲一下空间复杂度 然后可以带出morries遍历(忘记名字是不是这样打了)
6.在数组求累加和为k的子数组 ,然后有一次问了一下在树中累加为k的(这在左神的课中讲过);
7.只由 0,1组成第一个能被k整除的数,也有可能不存在
8.判断一个数能否能被拆分成3=1^3+1^3+1^3 就是三次方相加的形式;
9.素数环,以及素数环能不能优化(这问题我不太知道,我回答的是我可以用哈希表把已求过的素数保存起来)
10.n 只能通过+1/-1/除2 程序实现最快多少次能到1;
11.n皇后问题;
12.堆排
再就是一些算法;
kmp算法,acz自动机,线段树,树形数组,manacher算法,挺多的 这些算法感觉 要现场手写还是
挺复杂的,我大多是手写代码的时候往上面扯一下,对 证明一下我自己知道;


总结一下校招 大抵就是 勿忘初心 方得始终把
中间也一度觉得很累 想放弃,想说要不就不要定那么高目标,但是挺一挺也就过来了。
希望能对大家有点点帮助。
最后还是想感谢叶神 ,牛客网,我大三前三年大抵就是玩玩游戏,打打球;
有了牛客网这个平台才说 噢 原来编码不是那么机械,可以这样有意思哈哈 

希望 人生精彩处见;
然后给大家拜个早年? 希望大家2017一切顺利把

8条回帖

回帖
牛客网,程序员必备求职神器
QQ群:169195721
微 信:www_nowcoder_com 关注
微 博:牛客网 关注

扫一扫,把题目装进口袋