当前位置: 首页 > 面试经验 >

滴滴测试开发岗一面和二面面经

优质
小牛编辑
84浏览
2023-06-16

滴滴测试开发岗一面和二面面经

一面结束之后10分钟就是二面,强度太大啦,首先都是自我介绍,然后一面问了我实习经历和项目经历,还有一些八股文和算法题。二面问了一些逻辑题和算法题。这里主要介绍一下八股文和算法题,答案是我面试完查的,可能不太准确。

一面:

1.Linux文件重命名?

mv 原文件名 新文件名。

rename [OPTIONS] EXPRESSION REPLACEMENT FILE...

EXPRESSION:原字符串,即文件名需要替换的字符串;

REPLACEMENT :目标字符串,将文件名中含有的原字符替换成目标字符串;

FILE…:指定要改变文件名的文件列表。

2.git遇到冲突要怎么解决?

把不同分支的有效代码保留,合并最终代码。

3.==和equals()区别?

==比较的是两个对象的地址,而equals比较的是两个对象的内容。

4.算法题:大数相加:两个字符串的数字相加,返回字符串。例如:String a = “123”,String b = “456”,返回“579”.

publicString solve (String s, String t) {

//若是其中一个为空,返回另一个

if(s.length()<=0)

return t;

if(t.length()<=0)

return s;

//让s为较长的,t为较短的

if(s.length() < t.length()){

String temp = s;

s = t;

t = temp;

}

int carry = 0; //进位标志

char[] res = newchar[s.length()];

//从后往前遍历较长的字符串

for(inti = s.length() - 1; i >= 0; i--){

//转数字加上进位

int temp = s.charAt(i) - '0'+ carry;

//转较短的字符串相应的从后往前的下标

int j = i - s.length() + t.length();

//如果较短字符串还有

if(j >= 0)

//转数组相加

temp += t.charAt(j) - '0';

//取进位

carry = temp / 10;

//去十位

temp = temp % 10;

//修改结果

res[i] = (char)(temp + '0');

}

String output = String.valueOf(res);

//最后的进位

if(carry == 1)

output = '1'+ output;

return output;

}

二面:

1.a地和b地相距300米,有一个人走一步是一米,他向前走两步然后退一步,问总共需要多少步?

2.公司里有两部电梯,如何设计测试用例去测试电梯各功能能否正常运行?

3.算法题:招聘保镖,第一天可以得到一元报酬;随后的两天可以每天得到两元报酬;随后的3天每天可以得到3元报酬,以此类推。计算从第一天开始到给定天数可以获得多少报酬?

    public static int money(int n){
	int totalSalary = 0;
	int day = 1;
	int salary = 1;
	for (int i = 1; i <= n; i++) {
        totalSalary += salary;
        day--;

        if (day == 0) {
            salary++;
            day = salary;
        }
    }

    return totalSalary;
}

4.说下自己优缺点?

5.在工作中遇到困难怎么办?

#我的实习求职记录#
 类似资料: