zhiliti

来源:互联网 发布:淘宝李宁乒乓球运动服 编辑:程序博客网 时间:2024/04/30 10:34
孤雁儿展开

世人作梅词,下笔便俗。予试作一篇,乃知前言不妄耳。

藤床纸帐朝眠起,
说不尽、无佳思。
沈香烟断玉炉寒,
伴我情怀如水。
笛声三弄,
梅心惊破,
多少春情意。

小风疏雨萧萧地,
又催下、千行泪。
吹箫人去玉楼空,
肠断与谁同倚?一枝折得,
人间天上,
没个人堪寄。

1.几种常见算法(排序、查找等)描述出来算法的过程,复杂度

2.给你设定几种场景,让你解答:比如给你两部手机,让你站在一百层楼高的地方,假设在第n层手机摔下就会摔破,问你怎样用着两部手机确定这个临界层。
3.怎样知道一个链表里是否有环的存在,以及确定环的位置??如何确定两个链表是否有相同的部分
4.网络一些知识,比如http几次握手的情况,ack等包,结束是否只能由服务器段先断开之类的。网络几层,常见网络设备属于哪层?
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。?



5.测试几种方法.
6.给定一个很大文件,内存里放不下,怎样搜索里面是否有需要的关键字,从百度搜索内容,描述一下大致的过程
7.?从网上找找百度质量部面试面试题目
8.?C语言?内存分配机制(堆栈区别,静态存储区)???????
9.?数组指针和指针数组有什么区别?
10、海量搜索问题?找找海量搜索面试题看看
百度搜索关键字放在一个大文件里,该文件在内存里装不下,用户可以输入关键字,在文件里查找关键字,看关键字是否在该文件里,给一个解决方案。(用Hash方法)???????????
11、搜索的原理?在百度页面输入关键字,得到搜索结果,解释一下这个过程是什么样的
12.深度搜索算法????????单链表?就地?反转?
13.Linux常见的命令看看(必考)?
14、TCP与UDP的区别
15、网络设备
16、socket
?
1.对Linux内核有一定的了解;??
2.熟悉数据库的使用,
3.熟悉基本的网络配置及路由器、交换机等网络设备的配置;?
4.了解TCP/IP协议
5.测试流程??有几种方式像什么白盒?黑盒???功能测试??性能测试?单元测试等等?
?
?
1.自我介绍啦?项目相关的
2.多准备?多看看常见面试题???
3.还有网上关于质量部面试的题目???这些比较有针对性一些?
?
实际遇到的面试题
一面
首先要自我介绍
?
1、进程与线程的区别?
一面第一个问题,自我介绍都没介绍完说了我知道的一些,他都说没答到点子上,问到底要怎么答,面试的GG让我自己上网搜答案。。。
答:什么是进程(Process):普通的解释就是,进程是程序的一次执行,而什么是线程(Thread),线程可以理解为进程中的执行的一段程序片段。在一个多任务环境中下面的概念可以帮助我们理解两者间的差别:


进程间是独立的,这表现在内存空间,上下文环境;线程运行在进程空间内。?
一般来讲(不使用特殊技术)进程是无法突破进程边界存取其他进程内的存储空间;而线程由于处于进程空间内,所以同一进程所产生的线程共享同一内存空间。?
同一进程中的两段代码不能够同时执行,除非引入线程。?
线程是属于进程的,当进程退出时该进程所产生的线程都会被强制退出并清除。?
线程占用的资源要少于进程所占用的资源。?
进程和线程都可以有优先级。?
在线程系统中进程也是一个线程。可以将进程理解为一个程序的第一个线程
多线程同步方法
?1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。?


  2互斥量:为协调共同对一个共享资源的单独访问而设计的。?


  3信号量:为控制一个具有有限数量用户资源而设计。?


  4事件:用来通知线程有一些事件已发生,从而启动后继任务的开始。
?
?
2、标准模板库STL?用过的库函数?(一面)
?
3、做过的有关测试的项目,没有问很细,测试用例是不是自己写的,根据做的项目,设计怎么测试自己的项目
?
4、静态函数库、动态函数库?区别?自己做的项目是属于动态的还是静态的
?
5、Linux编程怎么样(百度貌似基本上程序都跑在linux上,这个肯定要问到)
我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解
?
?
算法题
大部分是告诉他思路,面试官哥哥会把问题简化,再一点点启发,一点点给问题加条件,要把自己思想解释懂给他听,练练口才啊~还有准备好纸笔,一些代码,不好凭空想象~
1、在栈中,找出最小值,给出push?pop?求最小值min函数(不破坏栈的原始的顺序、用最小的时间)
?
2、矩阵中?横排?每行的数据是从小到大的,竖排?每一列也是从小到大?给出一个数用最快的时间查找一个数是否在矩阵中(空间复杂度)
?
3、括号匹配?{?【?(?看左右括号是否匹配?数学规则:{【(
1)不考虑数学规则
2)考虑数学规则
?
最后要把第三个?跟面试GG讨论完解决的思路后,把这个代码写一下,发给他,限时近一个小时,可以用伪代码,一开始说的,写代码的时候不用挂电话,后来就是说了机房不能说话,就让我把电话挂了~
?
二面
二面还是先自我介绍,的第一个问题,集合数的存储模式,一听就有点懵了,啥是集合数??委婉的告诉她不知道什么是集合数,她就说,存储模式有数组等,我当时很乱,就把我自己理解的,所有在内存中存储模式的,那些,数组、链表、栈、堆、常量区等等,都答了,想想真2。
之后围绕之前做过的项目问的比较多,比较详细,详细到了一些功能的实现,遇到的问题,怎么解决的等等,根据项目问了数据库的语句,找出数据中最大的前十个,给忘了,就说了C++中的实现方法,还自己引申了一下,答了内存中放的下的数据怎么处理、放不下怎么处理、找出最大的前十个怎么处理,前一万个怎么处理。。。
也是回答了一些测试的题,测试一个函数,设计测试用例,函数功能:两个已经排好序的数组,合并成为一个有序数组。
做过的白盒测试?实验?自动化测试?有没有写过脚本语言
问了?测试网络是否连通?ping命令
Linux?我还是像一面那么答的,这回让我列出了我自己熟悉的linux命令,我就说了一些,她问了一个退出vim怎么退出,就回答了,保存退出,不保存退出的命令等等。
还问了?编码量最大的项目,最近半年自学的东西,自学的途径等等。
?
我每次最后都要面试我的人给我一些建议,一是有些人给的建议很诚恳,像小米,直接说基础太差,要我好好学习基础;二是,基本上可以知道还有没有机会接着面了~直接问有没有戏,别人不一定会说。
?
面小米遇到的面试题:
?
1、c与c++分别是怎样动态分配和释放内存的(小米)
?
2、存储位置的区别?栈区、堆区、全局变量、代码区(小米)
全局变量存储在全局静态存储区,局部变量存在堆栈中
?
3、自己写一串代码实现atoi函数的功能,然后根据自己写的代码,写出测试用例,再根据测试用例完善些的代码(小米)
?
之前面小米的一个经验:不会的千万不要说你会,我提了下C#,面试官直接问我C#跟C++的区别,勉强说了一些,说着说着,说了一底层接口这个名词,面试官又问我底层接口有哪些,我当时想死的心都有了,于是,自己不熟悉的,在他还没具体细问问题的时候先告诉他会什么,不会什么,例如linux,我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解,就不会死很惨。
?
还有,简历注意下,之前朋友简历上写的?学过的课程中?有一个?linux内核?,这课确实是学了,百度的面试官问了一个问题?你比较熟悉哪一个linux内核命令,我们来深入探讨一下啊,这个就不好答了~
?
?
最后希望对大家有用吧~

1.几种常见算法(排序、查找等)描述出来算法的过程,复杂度

2.给你设定几种场景,让你解答:比如给你两部手机,让你站在一百层楼高的地方,假设在第n层手机摔下就会摔破,问你怎样用着两部手机确定这个临界层。

3.怎样知道一个链表里是否有环的存在,以及确定环的位置  如何确定两个链表是否有相同的部分

4.网络一些知识,比如http几次握手的情况,ack等包,结束是否只能由服务器段先断开之类的。网络几层,常见网络设备属于哪层?

在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

...

5.测试几种方法.

6.给定一个很大文件,内存里放不下,怎样搜索里面是否有需要的关键字,从百度搜索内容,描述一下大致的过程

7. 从网上找找百度质量部面试面试题目

8. C语言 内存分配机制(堆栈区别,静态存储区)       

9. 数组指针和指针数组有什么区别 

10、海量搜索问题 找找海量搜索面试题看看

百度搜索关键字放在一个大文件里,该文件在内存里装不下,用户可以输入关键字,在文件里查找关键字,看关键字是否在该文件里,给一个解决方案。(Hash方法)           

11、搜索的原理 在百度页面输入关键字,得到搜索结果,解释一下这个过程是什么样的

12.深度搜索算法        单链表 就地 反转 

13.Linux常见的命令看看(必考) 

14、TCPUDP的区别

15、网络设备

16、socket

 

1.Linux内核有一定的了解;  

2.熟悉数据库的使用,

3.熟悉基本的网络配置及路由器、交换机等网络设备的配置; 

4.了解TCP/IP协议

5.测试流程  有几种方式像什么白盒 黑盒   功能测试  性能测试 单元测试等等 

 

 

1.自我介绍啦 项目相关的

2.多准备 多看看常见面试题   

3.还有网上关于质量部面试的题目   这些比较有针对性一些 

 

实际遇到的面试题

一面

首先要自我介绍

 

1、进程与线程的区别 

一面第一个问题,自我介绍都没介绍完说了我知道的一些,他都说没答到点子上,问到底要怎么答,面试的GG让我自己上网搜答案。。。

答:什么是进程(Process):普通的解释就是,进程是程序的一次执行,而什么是线程(Thread),线程可以理解为进程中的执行的一段程序片段。在一个多任务环境中下面的概念可以帮助我们理解两者间的差别:

进程间是独立的,这表现在内存空间,上下文环境;线程运行在进程空间内。 
一般来讲(不使用特殊技术)进程是无法突破进程边界存取其他进程内的存储空间;而线程由于处于进程空间内,所以同一进程所产生的线程共享同一内存空间。 
同一进程中的两段代码不能够同时执行,除非引入线程。 
线程是属于进程的,当进程退出时该进程所产生的线程都会被强制退出并清除。 
线程占用的资源要少于进程所占用的资源。 
进程和线程都可以有优先级。 
在线程系统中进程也是一个线程。可以将进程理解为一个程序的第一个线程

多线程同步方法

 1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 


  2互斥量:为协调共同对一个共享资源的单独访问而设计的。 

  3信号量:为控制一个具有有限数量用户资源而设计。 

  4事件:用来通知线程有一些事件已发生,从而启动后继任务的开始。

 

 

2、标准模板库STL 用过的库函数 (一面)

 

3、做过的有关测试的项目,没有问很细,测试用例是不是自己写的,根据做的项目,设计怎么测试自己的项目

 

4、静态函数库、动态函数库 区别 自己做的项目是属于动态的还是静态的

 

5、Linux编程怎么样(百度貌似基本上程序都跑在linux上,这个肯定要问到)

我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解

 

 

算法题

大部分是告诉他思路,面试官哥哥会把问题简化,再一点点启发,一点点给问题加条件,要把自己思想解释懂给他听,练练口才啊~还有准备好纸笔,一些代码,不好凭空想象~

1、在栈中,找出最小值,给出push pop 求最小值min函数(不破坏栈的原始的顺序、用最小的时间)

 

2、矩阵中 横排 每行的数据是从小到大的,竖排 每一列也是从小到大 给出一个数用最快的时间查找一个数是否在矩阵中(空间复杂度)

 

3、括号匹配 【 ( 看左右括号是否匹配 数学规则:{【(

1)不考虑数学规则

2)考虑数学规则

 

最后要把第三个 跟面试GG讨论完解决的思路后,把这个代码写一下,发给他,限时近一个小时,可以用伪代码,一开始说的,写代码的时候不用挂电话,后来就是说了机房不能说话,就让我把电话挂了~

 

二面

二面还是先自我介绍,的第一个问题,集合数的存储模式,一听就有点懵了,啥是集合数??委婉的告诉她不知道什么是集合数,她就说,存储模式有数组等,我当时很乱,就把我自己理解的,所有在内存中存储模式的,那些,数组、链表、栈、堆、常量区等等,都答了,想想真2

之后围绕之前做过的项目问的比较多,比较详细,详细到了一些功能的实现,遇到的问题,怎么解决的等等,根据项目问了数据库的语句,找出数据中最大的前十个,给忘了,就说了C++中的实现方法,还自己引申了一下,答了内存中放的下的数据怎么处理、放不下怎么处理、找出最大的前十个怎么处理,前一万个怎么处理。。。

也是回答了一些测试的题,测试一个函数,设计测试用例,函数功能:两个已经排好序的数组,合并成为一个有序数组。

做过的白盒测试 实验 自动化测试 有没有写过脚本语言

问了 测试网络是否连通 ping命令

Linux 我还是像一面那么答的,这回让我列出了我自己熟悉的linux命令,我就说了一些,她问了一个退出vim怎么退出,就回答了,保存退出,不保存退出的命令等等。

还问了 编码量最大的项目,最近半年自学的东西,自学的途径等等。

 

我每次最后都要面试我的人给我一些建议,一是有些人给的建议很诚恳,像小米,直接说基础太差,要我好好学习基础;二是,基本上可以知道还有没有机会接着面了~直接问有没有戏,别人不一定会说。

 

面小米遇到的面试题:

 

1、cc++分别是怎样动态分配和释放内存的(小米)

 

2、存储位置的区别 栈区、堆区、全局变量、代码区(小米)

全局变量存储在全局静态存储区,局部变量存在堆栈中

 

3、自己写一串代码实现atoi函数的功能,然后根据自己写的代码,写出测试用例,再根据测试用例完善些的代码(小米)

 

之前面小米的一个经验:不会的千万不要说你会,我提了下C#,面试官直接问我C#C++的区别,勉强说了一些,说着说着,说了一底层接口这个名词,面试官又问我底层接口有哪些,我当时想死的心都有了,于是,自己不熟悉的,在他还没具体细问问题的时候先告诉他会什么,不会什么,例如linux,我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解,就不会死很惨。

 

还有,简历注意下,之前朋友简历上写的 学过的课程中 有一个 linux内核 ,这课确实是学了,百度的面试官问了一个问题 你比较熟悉哪一个linux内核命令,我们来深入探讨一下啊,这个就不好答了~

 

 

最后希望对大家有用吧~

0 0
原创粉丝点击