【前端校招面经】小米2023春招前端二面面经

之前的一面面经在这里: https://www.nowcoder.com/discuss/461227329340133376?sourceSSR=users

base: 北京, 上海, 南京可选 岗位: 前端开发 部门: 小米造车业务

  • 自我介绍
  • 介绍过往实习经历
  • 过去的实习中, 你最有成就感的一件事
  • 场景题: 假如一辆电动车在每秒会采集一次特征数据并传入数据库, 前端用户可输入一个时间区间, 获取该区间内所有特征数据并在网页绘制折线图, 请问如果用户指定的时间区间特别大, 导致要传输的数据很多, 前端该如何做优化?
  • 你在实习过程中有哪些收获?
  • 你对未来 1-2 年的规划是什么?
  • 代码题: 山峰数组的顶部

查询山峰的峰顶,输入数组: [1, 2, 4, 6, 9, 5, 3, 2, 1]

需要找到数组中最大的数字

function findPeak(arr: number[]): number {
    if (arr.length === 0) {
        throw new Error('传入的数据不符合要求');
    }
    let i = 0, j = arr.length - 1;
    while (i < j) {
        if (arr[i + 1] > arr[i]) {
            i++;
        }
        if (arr[j - 1] > arr[j]) {
            j--;
        }
        if (j - i === 1) {
            break;
        }
    }
    return Math.max(arr[i], arr[j]);
}

console.log(findPeak([1, 2, 4, 6, 9, 5, 3, 2, 1]));
  • 代码题: 打印星星

假如输入数字 5, 输出如下形式的字符串:

*****
 ****
  ***
   **
    *
function printStar(n: number) {
    if (Number.isNaN(n) || n <= 0) {
        throw new Error('传入的 n 必须是一个 > 0 的整数');
    }
    n = Math.floor(n, 0); // 把小数转成整数
    for (let i = 0; i < n; i++) {
        console.log(`${' '.repeat(i)}${'*'.repeat(n - i)}`);
    }
}

printStar(5);

反问环节:

  1. 核心业务场景: B 端数据可视化
  2. 裁员的问题不必担心, 只要小米还没把车造出来就不会对汽车业务裁员
  3. 小米造车相比于特斯拉, 比亚迪, 小鹏, 理想等其他玩家有哪些优势? ①小米有资金优势; ②小米不是从无到有, 小米有米粉, 有米粉作为第一波购车的主力; ③小米有做手机的经验, 在供应链管理上有优势
#软件开发2023笔面经##小米##前端##前端面经#
全部评论
感谢大佬分享
1 回复 分享
发布于 2023-03-18 19:12 广东
小米已经把车造出来了
点赞 回复 分享
发布于 2024-05-01 20:35 广东
第一个代码题应该是用二分吧……
点赞 回复 分享
发布于 2023-03-21 14:01 重庆
跟我二面问的都一样
点赞 回复 分享
发布于 2023-03-20 20:14 四川
想问下有后续消息吗
点赞 回复 分享
发布于 2023-03-20 15:09 浙江
6啊,有offer了吗
点赞 回复 分享
发布于 2023-03-18 19:00 甘肃

相关推荐

1.项目介绍2.&nbsp;你参与的那个xx系统,如果这个系统后期要支持多租户,你觉得前端这块怎么改动会更合理3.&nbsp;Vue3&nbsp;的&nbsp;Composition&nbsp;API&nbsp;setup()&nbsp;里响应式丢失是什么原因,怎么解决4.&nbsp;用了&nbsp;Pinia&nbsp;做状态管理,在模块之间的通信怎么处理5.我看你项目里用&nbsp;GRBAC&nbsp;做权限控制,那我问你一个场景:如果权限在使用过程中发生变更(比如一个用户的角色被删了),你这边怎么清理掉他之前加载的权限路由6.&nbsp;看你做了双&nbsp;token&nbsp;无感刷新,如果&nbsp;refresh&nbsp;token&nbsp;也失效了,但你这时挂起了一堆请求,刷新失败了,怎么处理7.&nbsp;你提到你们公司做系统集成,那如果你要集成一个船上的摄像监控系统(第三方页面,但它不能改代码,只能iframe嵌进去,而且还要求根据用户权限控制展示内容,你会怎么处理8.&nbsp;有这样一个场景:如果你从多个系统的&nbsp;API&nbsp;拉数据,但这些系统的数据结构不一致,比如&nbsp;A&nbsp;系统返回&nbsp;camelCase、B&nbsp;系统是&nbsp;snake_case,还有一些是中文&nbsp;key,你怎么统一数据结构,来复用9.如果让你来你现在负责一个项目,有20+个页面,需求方经常改字段、加字段,你每次都要改组件,这个时候你怎么来设计10.&nbsp;如果你要做一个拖拽式仪表盘Dashboard用户呢能自己拖拽、组合图表组件展示不同数据源的信息,你会怎么来设计这个系统11.&nbsp;看你做了一个公交大屏项目,项目里画车辆轨迹,那如果现在一个页面要同时展示&nbsp;300&nbsp;辆车的实时位置+轨迹,你怎么来优化12.&nbsp;地图中你是怎么处理车辆轨迹“绕圈走”的情况的?比如一个车在原地掉头、拐弯,但&nbsp;GPS&nbsp;连续记录了好几个点,那肯定你的轨迹图就会一堆锯齿,怎么来做呢13.&nbsp;GeoJSON&nbsp;有哪些字段?你在做行政区边界展示的时候,做过数据裁剪吗?如果只展示“浦东新区”这一个区的数据,你怎么只加载它?14.怎么处理&nbsp;WebSocket&nbsp;的多连接问题?比如你一个页面要同时订阅车辆位置、报警事件、设备状态,怎么复用,保证不丢数据15.&nbsp;有没有处理过图表/地图上的数据级联问题?比如点击图表某个项目,地图跟着联动展示,这块怎么处理的16.手撕:给定一个整数数组&nbsp;nums&nbsp;,找到一个具有最大和的连续子数组,打印该子数组并返回其最大和。17.反问
查看15道真题和解析
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
12-03 17:13
字节跳动 前端开发 34*15 硕士985
点赞 评论 收藏
分享
评论
4
39
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务