度小满三面

2024-10-11 度小满三面

  • 介绍小红书项目
  • 介绍字节项目
  • 函数式编程,面向对象
  • 手写题,一个函数,对传入的数组排序,改变了原数组,改成纯函数 toSorted, 拷贝再排序
  • nodejs 中遇到多个地方更改一个公共变量如何处理
  • 科里化有什么好处和问题 提到了测试,确实没咋想到
  • 手写一个金额转换函数,数字->中文,12223333 -> 一千二百二十二万三千三百三十三
// 我这样写的,还需要debug,不够完善
// 最后反问给的思路是用俩个队列,一个维护数字,一个维护单位,最后处理一下0的情况

const NUM_CN_MAP = {
  0: '',
  1: '一',
  2: '二',
  3: '三',
  4: '四',
  5: '五',
  6: '六',
  7: '七',
  8: '八',
  9: '九',
}

const MID_CN_MAP = {
  0: '',
  1: '十',
  2: '百',
  3: '千',
}

const WAN_CN_MAP = {
  0: '',
  1: '万',
  2: '亿',
  // ...
}
// 122,2233 -> 一百二十二万,两千二百三十三
// 1222,2222,0000 -> 一千二百二十二亿,二百二十二万
const numToCn = num => {
  let temp = num
  let ans = ''
  let mid = 0
  let wanMid = 0
  while (temp > 0) {
    let temp2 = temp % 10
    ans = MID_CN_MAP[mid] + NUM_CN_MAP[temp2] + ans

    let tempMid = (mid + 1) % 4
    if (!tempMid) wanMid++

    ans = WAN_CN_MAP[wanMid] + ans
    mid = tempMid

    temp = Math.floor(temp / 10)
  }

  return ans
}

console.log(numToCn(1222233)) // 万百一万十二万二万千二百二十三三

#面经##秋招##度小满##前端#
全部评论
大佬,手写题是题目显示在题目区吗?还是面试官口述啊
点赞 回复 分享
发布于 10-12 08:17 黑龙江
有结果了吗?
点赞 回复 分享
发布于 10-17 15:27 湖北
过过过!
点赞 回复 分享
发布于 10-24 12:32 北京

相关推荐

10-29 11:45
东北大学 C++
一面:操作系统下面有个proc目录,讲一下这个目录中管理的都是什么?运行中的进程都有一个以其 PID 为名的子目录,我要查看这个进程的CPU占用怎么看?top命令,它是怎么做到能看到整机资源的?现在写一些C++项目,部署到服务器上,他现在出现了OM,它被cue了,那这个时候需要排查一下这个问题怎么排查?根据你了解的操作系统和命令的话如果有一个学生表student,有四个字段,student,score,age,class,求每个班age大于18的人数sql语句怎么写?讲解一下锁的可重入性介绍一下grpc,json和protobuf的实现、区别,应用场景。设计一个类似的应用场景。讲解一下MySQL的索引,有什么优点加索引之后查找方式?B+树场景下怎么进行的查表过程索引使用B+树它的优势是什么?假设我们对一个text字段做了索引,那么这个时候它的查找速度会不会快?如果快或者不快的话,它是一个怎么寻址的过程?比如说他在寻址过程中要二分,他是根据什么去做的?二分怎么做的排序?一张表中对性别见了索引,它的缺点是什么样子,数据呈现是什么样子,为什么他快不了?讲一下对拥塞控制的理解为什么要修改门限值?不修改门限会有什么问题?手撕:查找第K个最大值二面:groupcache和redis的区别是什么?讲一下你理解的SQL优化有哪些?为什么索引失效会影响性能?MySQL索引的存在形式是什么?在Linux上,僵尸进程是怎么形成的?讲解一下Go的GMP和垃圾回收机制Linux如何查看一个进程的信息?一般进程的信息都有哪些Linux系统里面他的文件权限系统是怎么样的?怎么控制它的文件权限,哪些值分别代表什么意思?一般655是什么权限?介绍一下TCP/IP网络模型手撕:用golang写一下你项目中的某一块核心代码(忘得差不多,提问不能cpp? 面试官:只能golang,写的太烂挂 )。
查看28道真题和解析
点赞 评论 收藏
分享
3 9 评论
分享
牛客网
牛客企业服务