搜狗面试总结
题目:
计算机网络方面:
TCP/IP协议知识,三次握手的详细过程,等待时间等也要具体掌握
get和post协议知识,两者的区别以及工作原理
搜索引擎进行搜索的过程
C++知识:
一个整数的二进制表达中1的个数
while(n!=0)
{
++count;
n=n&(n-1);
}
字符串反转(常规表达,递归方法):
void Reverse(char *s) {
int n = strlen(s);
for (int i = 0, j = n - 1; i<j; i++, j--) {
char c = s[i];
s[i] = s[j];
s[j] = c;
}
}
char *reverse(char *str,int n)
{
if(n==1)
return str;
else{
char ch=str[0];
str[0]=str[n-1];
str[n-1]='\0';
reverse(str+1);
str[n-1]=temp;
}
}
快速排序
Qsort(int a[],int low,int high)
{
int first=low;
int last=high;
int key=a[first];
while(first<last)
{
while(first<last&&key<a[last])
--last;
a[first]=a[last];
while(first<last&&key>a[first])
first++;
a[last]=a[first];
}
a[first]=key;
Qsort(a,low,last-1);
Qsort(a,first+1,high);
}
Char a[]=”hello”与chara[]={‘h’,’e’,’l’,’l’,’o’};sizeof用于其时的值为多少分别
运算符优先级的考虑
内存地址:string a=”hello”,string b=”hello”,string *c=new string(“hello”)三者之间:a==b?a==c?a.equal(c)?这三个哪个表示是正确的
内存泄漏是如何导致的?现象是什么?写一个会导致内存泄漏的程序?在一个很大的项目中如何准确定位内存泄漏点?
进程和线程的区别与联系?
一个进程中如果有一个线程down掉了会影响其他线程吗? 会
Linux命令:
Find,whereis,located,pwd,进程调度的命令。各种Linux命令都要了解一下
数据库:
基本操作知识(增删改查,建表,修改一个表中的某一个字段),数据结构基本知识
数据库方面的知识相当于现在是一点也不会
测试方面知识:
QQ传输文件的测试用例
当一个客户端程序崩溃时该如何找原因
测试方法:等价类测试的问题
测试开发者和普通同学在面对一个软件时看法应该有哪些不同
为何选择测试工作,对它的一种理解
综合面试问题:
在团队协作中遇到问题是如何解决的?
如果一个项目马上到期而测试无法完成此时如何处理?
测试和开发者遇到问题时如何沟通交流解决问题?