📌  相关文章
📜  BankBazaar.com 面试经历|第 7 组(针对高级 Android 开发人员)

📅  最后修改于: 2021-09-23 06:18:08             🧑  作者: Mango

职位:高级安卓开发人员

能力将是 Tech Fit(问题解决、数据结构和算法)

第一回合:

电话回合:
1. 克隆一个带有 next 和随机指针的链表
https://www.geeksforgeeks.org/a-linked-list-with-next-and-arbit-pointer/

2. 你必须设计一个有列表的数据结构。你需要做3个操作
1. 插入到位。
2. 从索引中获取值。
3.更新所有索引

时间复杂度为 O(1)。

提示:我为每个索引使用了计数,如果用户调用更新所有索引,我有额外的变量来存储值。
在 count 的帮助下,您可以确定是否必须从索引或额外的更新变量中选择值。

班加罗尔的现场回合

第二轮:

1、项目相关问题。

2.我们有n张卡片,每张卡片的编号从1到n。
所有卡片随机洗牌。
我们只允许操作 MoveCard(n) 将值为 n 的卡片移动到堆的顶部。
我们需要以最少的 MoveCard 操作对一堆卡片进行排序。
我能想到的最简单的方法是从 MoveCard(n)、MoveCard(n-1)、MoveCard(n-2)…开始。移动卡(1)。
这种方法将解决 n MoveCard 操作中的问题。
https://stackoverflow.com/questions/21852309/sort-a-deck-of-cards-with-minimum-number-of-moves

第三轮:

1. 是树公共祖先问题和链表Y节点问题的变异。我记不太清楚了
但如果你知道这两个,你将能够回答。

2.最长递增子序列
https://www.geeksforgeeks.org/dynamic-programming-set-3-longest-increasing-subsequence/

第四轮:

1. 100人手拿枪站成一圈。 1杀2,3杀4,5杀6等等
直到我们只剩下一个人。谁将是最后一个活着的人。编写代码以有效地实现这一点。

Java循环依赖题。

3. 一些基本问题

4. 编写一个具有两个线程(A 和 B)的程序,其中 A 打印 1 ,B 打印 2 ,依此类推,直到达到 50。

谢谢 GFG

相关实践问题

克隆带有下一个和随机指针的链表
对一堆卡片进行排序
最长递增子序列
BankBazaar的所有练习题!