📜  Factset 面试经验 | Set 9(全日制校内)

📅  最后修改于: 2022-05-13 01:58:12.363000             🧑  作者: Mango

Factset 面试经验 | Set 9(全日制校内)

选择过程有两个阶段。

笔纸编码轮(第一阶段):

我们收到了一本由三个编码问题组成的小册子,然后是空白区域来写相同的解决方案。

Q-1:给定一个大小为 n*m 的矩阵和一个点 P(c,r)。从点 P 开始以螺旋形式(顺时针)打印矩阵。
前任。
输入:
3 3 // n, m
1 2 3
4 5 6
7 8 9
1 3 // 点 P

输出:
3 6 5 2 9 8 7 4 1

Q-2:给定一个只包含数字(0-9)的字符串。通过从字符串中删除 k 个字符,您可以获得的最小数字是多少。

Ex.
Input:
61411726         // string
3                // k

Output:
11126

Q-3:给定一个矩阵。将其转换为链表矩阵,使得每个节点都连接到其下一个右下节点。

Ex:
1 2 3
4 5 6
7 8 9

Output:
1->2->3->NULL
|  |  |
v  v  v
4->5->6->NULL
|  |  |
v  v  v
7->8->9->NULL
|  |  |
v  v  v
--NULL-


Face2Face(第 2 阶段):

有两轮技术轮次,然后是一轮人力资源轮次。

第1轮:

面试官问了四个编码问题:
Q – 给定一个包含重复连续元素的字符串。通过将所有连续出现的字符替换为重复次数来压缩字符串。
前任:
进出口:
aabbbcddddee
输出/输出:
a2b3cd4e2

Q——给定一棵二叉树。您需要在不使用任何额外空间、递归或任何东西的情况下检查它是否是完美二叉树。

Q – 给定一个数组,每个数字都出现两次,两个数字只出现一次。找到这两个数字。

问 - 哪种排序技术将用于对几乎排序的数组进行排序,为什么?举例说明。


第 2 轮:

面试官告诉我坐下来等2-5分钟。然后他给了我第一个问题。

Q – 给定一个按行和按列排序的矩阵 (NxN)。现在按排序顺序打印矩阵中存在的元素。约束——空间复杂度不大于 O(N)。 (N 是行数,而不是整个矩阵大小)
当我解释逻辑时,他让我编写代码,并试运行一些测试用例。

Q – 给定一棵 n 叉树。找到两个给定节点的 LCA。

在这之后,又有一位面试官加入了,他们都讨论了第一轮 Pen-Paper 的问题,并询问我是如何想出解决方案的。
问了一些关于 OOP 的问题,例如继承中构造函数的执行顺序。

他们印象非常深刻。在面试过程中尽量保持互动。他们帮助很大。