拼多多一面
拼多多服务端一面 3.14日
自我介绍,没问问题,只做了三道算法题
### 第一题(简单)
实现字符串拆分方法,不调用自带api
给一个字符串s,一个分隔符c
返回一个以分隔符c拆分的字符串数组,相当于实现java中的String.split()方法
### 第二题(中等)
给m个数组,每个数组长度为n按照升序排列,返回把m个数组中的前topN个小的数,从小到大排列
n远大于m
多索引➕堆,时间复杂度topN*log(m)
### 第三题(应用设计题,不要求编码,说思路即可)
模拟linux tail命令,返回文件最后N行数据
提供了两个底层api
文件大小:size()
从offset出读取n个字符到buf:read(byte[] buf, int offset, int n)
思路:指定一个大小m,比如为1000
读取最后m个字符,read(buf, size()-m, m)
判断其中有多少个换行符(/n对应的值)
### 反问:部门做什么业务
总时长45min左右
更新3.16日出了二面通知
#拼多多##面试题目#