Zilingo 面试体验 – 2019 年 7 月,班加罗尔
Zilingo 是一家快速成长的初创公司。他们在新加坡、泰国、印度尼西亚等东南亚国家开展业务,他们的技术办公室位于班加罗尔。我已经在他们的职业页面上申请了。
第一轮 – 纸笔编码 1 小时以上
我收到了一份包含 5 个编码问题的试卷。我不得不在纸上用代码编写解决方案。
问题:[我做了5个中的前4个]
- 编写一个颠倒字符串中单词顺序的程序。例如,您的函数应该转换字符串“Do or do not, there is no try”。到字符串“try.不,不,做或做”
复杂性:O(1) 空间和 O(n) 时间
2)在二叉树中打印距离目标节点k距离的所有节点
复杂性:O(1) 空间和 O(n) 时间
或者
打印从根到两个给定节点的两条路径的公共路径。
3) 你将如何设计一个除了 push 和 pop 之外还有一个
函数min 返回最小元素? Push、pop 和 min 应该
都在 O(1) 时间内运行。
4) 编写一个返回集合的所有子集的方法。
或者
给定一个输入字符串,找出所有可以使用的数字组合
相同顺序的数字。
输入:123
输出:[1 2 3]、[ 1 23]、[ 12 3] 、[123]
5) 编写单例的线程安全实现
第二轮——讨论以前的纸笔编码40 分钟
在这一轮面试中,面试官简单地和我讨论了我在纸上写的解决方案,并要求我浏览我写的所有解决方案和代码。
第三轮 – 人力资源讲座 – 20 分钟
这轮本来应该最后进行的,但是由于面试官忙于接受其他面试,这一轮首先发生了。这一轮面试官简单地告诉了我公司的愿景和公司的工作文化,并问我为什么要离开现在的组织。
第四轮——工程副总裁技术轮——100+分钟
这一轮面试官问了我很多很多的问题,大部分都和大学教给你的概念有关,面试时间很长。
问题/讨论 -
- 我在现在的公司做的工作。
- 使用 kafka 时,我们是否将事件存储在内存或数据库中
- 消息队列一般如何工作/kafka 的用例是什么
- 数字(比方说-5)如何存储在计算机中,计算机如何通过减法/加法等基本运算及其存储数字的符号进行操作。提示 - 2 的补码
- 你从事过套接字编程吗?
- 为什么使用静态关键字? Java中调用main函数时public、static、void是什么意思?我们可以删除 main() 前面的静态关键字吗
区别黑白静态函数和非静态函数。
当我们运行一个调用 main 方法的Java程序时,它是如何调用的?
- 线程和进程
- 当使用 fork() 创建进程时,计算机在运行时如何区分它是父进程还是子进程。黑白差异 kill 和 kill -9
- 你还记得你在大学学过的调度算法吗?哪一个
算法允许抢占,哪种调度算法提供最大吞吐量?
- 是否可以从 HTTP 请求中的请求对象更改 IP?
是否可以从 HTTP 请求中的请求对象更改用户代理?
讨论 HTTP 请求如何通过网络。
- 路由是如何在网络中发生的?
- 什么是 A 类、B 类和 C 类 IP?什么是网络广播 IP?子网的 IP 范围是多少?
- 什么是javascript中的事件循环?什么是javascript中的闭包
- setTimeout() 和 setInterval() 在 javascript 中返回什么?
- 使用 setInterval() 和 setTimeout() 在 javascript 中编写一个类,这样您将获得三个东西:初始延迟、时间间隔和函数(myFunction),您的类应该有两个函数 startTask() 和 stopTask()。如果您调用 startTask(),那么在初始延迟之后,您的 myFunction()函数应该开始执行,并且 myFunction函数应该在每个时间间隔(提供)之后执行。
Stop()函数应该停止这个执行过程。
讨论 JavaScript 中的这个关键字。 JavaScript 中的闭包。