携程前端实习笔试+一二面+hr面(已offer)
第一题:任意加一位数字,然它第一题 7的倍数
示例一:100% 通过
输入1 输出21
示例二:
输入 15 输出105
let str=readline();//获取字符串 let res; function func(str){ for(let i=0;i<=9;i++){ res = str+i; if((res*1)%7==0){ return res; } } } console.log(func(str))
第二题 :100%通过
0111111 变成 相邻无重复,要求改变的索引和最小
注意索引从1开始
//只有两种情况: // 第一个数字变: let b=""; b+=a[0]; for(let i=1;i<a.length;i++){ if(b[i-1]=="0"){ b+="1" }else{ b+="0" } } //第一个数字变 let c; if(a[0]=="1"){ c="0" }else{ c="1" } for(let i=1;i<a.length;i++){ if(c[i-1]=="0"){ c+="1"; }else{ c+="0" } } //计算路径和 function path(a,b){ let path = 0; for(let i=0;i<a.length;i++){ if(a[i]!=b[i]){ path=path+i+1; } } return path; } let res = Math.min(path(a,b),path(a,c)); console.log(res);
// 第三题:子串最多包含k种字母,求最长子串
通过 50%
function diff(str){ let res = []; for(let i=0;i<str.length;i++){ if(res.includes(str[i])){ continue; }else{ res.push(str[i]); } } return res.length; } let k=3; let str = "aabcde"; let dp =[]; dp.push(str[0]); let res = 1;// 最长子串的长度; for(let i=1;i<str.length;i++){ if(dp[i-1].includes(str[i])){// 如果前一个子串中包含str[i] dp[i] = dp[i-1]+str[i]; }else{//如果前一个子串不包含str[i] if(diff(dp[i-1])<k){//如果没达到最多种类 dp[i] = dp[i-1]+str[i]; }else{//如果达到了最多种类 let subArr = [str[i]]; let count = 1; for(let j=dp[i-1].length-1;j>=0;j--){ if(subArr.includes(dp[i-1][j])){//包含 subArr.unshift(dp[i-1][j]); }else{ count++; if(count<=k){ subArr.unshift(dp[i-1][j]); } } } dp[i] = subArr.join(""); } } res = Math.max(dp[i].length,res); } console.log(res)
一面:4月2日 1h
先做题,3道题 30min
1. 实现一个函数,两个 a,b。参数都是 string 类型。如果 b 是 a 的子串,返回 b 在a 中第一个字符的索引。否则返回 -1
2. 树状对象结构转为扁平数组
3. 扁平数组转为树状对象结构
问答 30min
二面:4月11日
1. 项目深挖
2. react 问答
3. 其他知识点问答
-----
二面完以后一直很焦虑,看到大家都收到了 hr 面邀请,疯狂翻牛客,疯狂在携程公众号查自己的进度,一直显示面试中。过了一天终于收到 hr 面邀请。
别。着。急。
hr面:4月18日 视频面试 30min
hr 说是 IBU 部门,hr 很温柔,面试过程中很多追问但不会感到不适。
1. 介绍一下对你来说挑战性比较大的项目经历/工作内容
2. 其他好的学习方法
3. 总结思考的周期
4. 除了技术难点,协作方面会遇到哪些问题,怎么解决的
5. 从 mentor 身上学到了哪些软技能
6. 目前你还有哪些方面需要进一步提升的
7. 自身的闪光点
8. 本科阶段做学生工作,给你带来了哪些
2. 其他好的学习方法
3. 总结思考的周期
4. 除了技术难点,协作方面会遇到哪些问题,怎么解决的
5. 从 mentor 身上学到了哪些软技能
6. 目前你还有哪些方面需要进一步提升的
7. 自身的闪光点
8. 本科阶段做学生工作,给你带来了哪些
9. 对部门的了解,对国际化业务的看法
已经过了英语六级,不需要英语测评。
hr 说会综合三轮面试结果,排序后决定最终offer.
offer:4月22日
下午 oc
晚上 offer
offer 签订截止日至:4月29日之前