showmebug初遇

1,069 阅读2分钟

前言

以前一直听说个这么线上面试的东西, 但是没经历过, 今天下午看见邮件有一封未读, 是一个某某某公司的链接, 点开就做了这么几道题.

正文

第一道题

大概就是说找到数组中的两个数字相加等于目标数字, 力扣很多这种题, 可以随便找找. 这个编辑器并不好用, 没什么提示, 所以我大致就是简单写了下.

题目是英文的, 其实我看见的时候不太想做, 首先是薪水并不高, 标注的非常普通的薪水, 其次是这家公司也是小型公司, 其实这样招人并不是很真诚.

反正不想多bb, 中文才是最屌的. 带着既然开始了, 就做完的心情, 继续了下一道题.

第二道题

题目就是说, 一些模块异步加载的, 而且加载不固定, 是根据一个随机字符串加载的. 随机字符串每个字符有对应的模块. 问应该怎么设计?

我不是很理解, 这道题到底是要问什么, 要问线程的阻塞?还是模块的设计?

模块根据字符串加载, 那肯定是遍历字符串,加载对应模块, 还有什么别的办法吗?

要么就设计成二进制位, 0001, 0010, 0100, 然后取&, 根据返回的结果case进行加载.

具体还是要看情况

第三道题

设计一个你们想要的数学表达分析式:

2 + 3 * 5

  • 请设计出对应的结构
  • 请实现一个方法
  • 怎么简化你的答案, 让这个方法更简单?
  • 你是如何定义节点的, 能不能简化他们?
  • 能不能写的相对松散一点, 方便进行模块化和扩展?

这道题给的图就是一个树状结构, +是根节点, 2是左子树, *是右子树, 3,5*的左右子树.

其实就是树的中序遍历, 有固定的模板.

最后三个问题看不懂, 选择不回答了.

总结

感觉是并不是一个很真诚招人的公司, 更像是每天没事就挂着招聘, 想因此筛选一下性价比高的也有可能. 后续如果有面试, 不会参加了, 因为中文这么叼, 英文只是学习的媒介, 个人不喜欢这种装x风格.