CommonFloor 面试经验 |第 1 组(2014 年安置问题)
公司:commonfloor.com(MaxHeap Technologies)
标准:对 CSE、EE、EC、MA 开放;没有 CGPA 标准
资格赛:在hackerearth.com上
1 小时 30 分钟:5 个客观问题和 1 个编码问题。
1)外键(DBMS)的定义。
2) 为任何平面图着色所需的颜色数量
3) 检测错误的最小汉明距离……
4)高度为h的完全二叉树中的节点数
5)两个正则表达式的相等性(基于身份)。
编码问题:
给定 a 的顶点、边、开始顶点和结束顶点
图。图是有向的,可以有循环。每条边的长度为 1 。你的任务是找到最小距离 b/w 开始和结束顶点,如果它是可到达的,否则打印 (-1)*(#Vertices 从开始顶点到达)
#Vertices <= 100000
#Edges <= 100000
BFS 是显而易见的。唯一的问题是 Graph 必须实现为邻接列表而不是 Adj 矩阵,否则会导致超出内存限制错误。
第 1 轮技术面试:(约 1 小时)
1)N皇后问题,数独问题的问题陈述和解决它们的策略
2)河内塔的问题陈述,编写代码解决它并将其扩展到4个塔
3) 对一个由 0 和 1 组成的数组进行排序
4)找到数组中的第一个非重复元素和各种方法(就像没有额外的
mem ,一次遍历)
5) 25 匹马 - 最小种族拼图
6) 从一个数组中找出所有和给定数字的三元组。报告它们的索引。
讨论各种方法,如天真、排序等。
7) 可以映射到从字符串中查找最大词典子序列的问题。
技术访谈 2:(约 1 小时)
操作系统基础:
1) 进程定义、线程、它们的差异、多线程以及关于它们的讨论
2) 什么是虚拟内存以及内存管理技术的讨论
3)什么是竞争条件?什么是共享内存?
4) 什么是临界区?彼得森溶胶?
5) 给出了 2 个进程及其代码。 (间接)找到关键部分
Android(我在 Android 上有我的实习生和 BTP):
1) 一般讨论我做过的 Android 应用和我的项目
2) Activity 生命周期和 diff 方法
数据库管理系统:
1) 索引和类型
2) 一级指数和综合指数
3)关于SQL的讨论
算法:
1)查找一个字符串是否是另一个字符串的子字符串。[我尝试了 KMP,但最终解释了朴素方法]。
2)讨论为什么我的代码没有通过所有测试用例 ==> 表示图的方式,不同方式的优缺点,几种情况和合适的图代表。
3)可以映射到寻找最长公共子序列的问题。编写完整的工作代码。
4)二叉搜索树的基础,定义了一个带有附加属性大小的新bst(左孩子,右孩子的节点总和+1)。找到第 K 个最小的节点。解释和编写工作代码{时间约束:2分钟}
HR 面试 : (2 HR ppl , Appprox 1/2 hr )
1.自我介绍,你对Commonfloor了解多少,为什么要加入?
2. 建议一些更改以及添加到 Commonfloor 网站的新功能。
3.关于我的实习的详细讨论
# 我是如何开发电子商务应用程序的?(比如工作分工、工作协调、要求我在我的手机上实时展示应用程序!!!!)
# 讨论 abt Apache Cordova vs Android { 基本上就像我的谈话一样 }
4.关于我的B技术项目(关于Android应用程序的功耗)以及关于甘特图和甘特项目(我的BTP的一部分)的基本问题的讨论
5. 关于我的 DBMS 学术项目“拼车”的问题。将其增强为可实现最大利润的业务模型(我告诉功能使其变得更好以及可以从拼车数据创建的其他业务)
6. 性格问题,比如“告诉我我为什么要雇用你?” , “你最不喜欢的品质”
轮到我了:我询问了工作文化、时间安排等。