文远知行-自动驾驶测试开发
一面:
自我介绍
两段实习项目仔细提问
基础:
1.列举10个git指令git add .
git commit " "
git push
git pull
git log
git status
git merge
git checkout
git clone
git revert
2.cp跟scp的区别
服务器内部复制,服务器之间的复制
3.搜索/home 目录下大于100M的文件
find ~ -size +100M
5.如何查看实时端口的连接
netstatus
6.给定 matrix = [ [1,2,3],
[4,5,6],
[7,8,9]]
原地旋转输入矩阵,使其变为:[
[7,4,1],
[8,5,2],
[9,6,3]]
vector<vector>int reverseMatrix(vector<vector>int nums){
vector<vector<int>>res;
int n = nums.size();
for(int i = 0 ; i < n;i++){
for(int j = 0; j < n;j++){
res[j][n-i-1] = nums[i][j];
}
}
return res;
}
二面:
项目提问
编程:
//给定一个已经排序的数组,给定目标值,希望找到是否存在对应数,如果找到其返回位置,没有返回-1;
int searchNum(vector<int>nums,int target){
int left = 0, right = nums.size();
while(left < right){
int mid = (left + right)/2;
if(nums[mid] > target){
right = mid;
}else if(nums[mid] < target){
left = mid + 1;
}else{
return mid;
}
}
return -1;
}
int searchNum(vector<int>nums,int target){
int left = 0, right = nums.size();
while(left < right){
int mid = (left + right)/2;
if(nums[mid] > target){
right = mid;
}else if(nums[mid] < target){
left = mid + 1;
}else{
return mid;
}
}
return -1;
}
三面:
科研项目和实习项目提问
给一个场景测试用例设计
编程:
// 有重复元素的整数数组,做排序和去重
[7 1 2 2 3 4 5 6]
vector<int>sortSet(vector<int>nums){
set<int>s;
for(auto n : nums){
s.insert(n);
}
nums.clear();
for(auto it:s){
nums.push_back(it);
}
quick_sort(nums, 0, nums.size()-1);
return nums;
}
void quick_sort(vector<int>&arr, int l, int r){
if(l < r){
int m = partition(arr,l,r);
quick_sort(arr,l,m-1);
quick_sort(arr,m+1,r);
}
}
int partition(vector<int>&arr, int l, int r){
int tag = arr[l];
while(l < r){
while(l < r && arr[r] >= tag){
r--;
}
if(l < r){
arr[l] = arr[r];
}
while(l < r && arr[l] <= tag){
l++;
}
if(l < r){
arr[r] = arr[l];
}
}
arr[l] = tag;
return l;
}
[7 1 2 2 3 4 5 6]
vector<int>sortSet(vector<int>nums){
set<int>s;
for(auto n : nums){
s.insert(n);
}
nums.clear();
for(auto it:s){
nums.push_back(it);
}
quick_sort(nums, 0, nums.size()-1);
return nums;
}
void quick_sort(vector<int>&arr, int l, int r){
if(l < r){
int m = partition(arr,l,r);
quick_sort(arr,l,m-1);
quick_sort(arr,m+1,r);
}
}
int partition(vector<int>&arr, int l, int r){
int tag = arr[l];
while(l < r){
while(l < r && arr[r] >= tag){
r--;
}
if(l < r){
arr[l] = arr[r];
}
while(l < r && arr[l] <= tag){
l++;
}
if(l < r){
arr[r] = arr[l];
}
}
arr[l] = tag;
return l;
}
四面:
1.自我介绍
2.项目提问,实习的哪个项目比较有收获,仔细说
3.是否了解cpu,gpu,如何衡量cpu,gpu
4. 多核,进程,线程的区别
5. 实习的压测是怎么做的
代码:
已知圆的定义是圆上一点到圆心的距离是半径r。
圆的周长
d=2∗π∗r
圆的面积
s=π∗r^2
请设计实验计算出圆周率的数值。
double caculatePi(){
int n1 = 0;//
int n2 = 0;
double pi;
for(int i = 0; i < 100; i++){//d = 50 圆心(50,50)
for(int j = 0; j < 100; j++){
n1++;
if(pow((i-50),2) + pow((j-50),2) <= 50*50){
n2++;
}
}
}
pi = 4*(n2/n1);
return pi;
}
已知圆的定义是圆上一点到圆心的距离是半径r。
圆的周长
d=2∗π∗r
圆的面积
s=π∗r^2
请设计实验计算出圆周率的数值。
double caculatePi(){
int n1 = 0;//
int n2 = 0;
double pi;
for(int i = 0; i < 100; i++){//d = 50 圆心(50,50)
for(int j = 0; j < 100; j++){
n1++;
if(pow((i-50),2) + pow((j-50),2) <= 50*50){
n2++;
}
}
}
pi = 4*(n2/n1);
return pi;
}
#文远知行##测试开发#