第1轮(2小时):
它有两个部分: 1.60分钟内完成50个MCQ。问题包括网络,操作系统,定量智能,C,C++,OOPS。 2.60分钟内回答2个编码问题。 i、 给定一个随机顺序的正、负数和n的可变数,求第n个最大数。 二,。给定两个整数n和m。在这两个数的二进制表示中找到最长的连续子集。 n和m分别是10和11。它们的二进制表示是1010和1011。两者中最长的连续子串都是101,最长的连续子串是101的值,即5。
第二轮(约1.15小时):
这是一个技术回合。它有与我的项目、XML、javascript、c++(主要是虚拟概念和面向对象)、操作系统、网络、数据结构、算法、网络安全、web服务、谜题相关的问题。
XML 1.两种类型的XML解析器是什么? 2.如果文本节点包含XML中的“&”符号,会发生什么? 3.什么是XML中的cdata类型节点? 4.什么是DOM?
javascript 5.如何在javascript中创建对象? 6.javascript中的继承类型是什么? 7.什么是JSON?
面向对象和C++ 8.什么是遗传,多态性? 9、C++中运行时多态性是如何实现的? 10、C++中空类的对象的大小是多少? 11、虚拟表是否影响C++中对象的大小? 12.什么是默认参数?为什么要使用它们?
操作系统 13.什么是虚拟内存?为什么需要它? 14.什么是过程? 15.一个进程如何将逻辑地址空间映射到物理地址空间? 16.什么是寻呼?它是如何实施的? 17.什么是重入代码? 18.什么是线?为什么需要它?关于它的一些讨论。
计算机网络 19.当你输入www.google时会发生什么。浏览器选项卡中的com? 20.什么是ARP?它有什么作用? 21.ARP表存储在哪里? 22.考虑到您所在的网络与谷歌的网络不同,您在发送主机上的请求包将目标mac地址作为您网络中哪个网元的mac地址? 23.什么是OSI层? 24.在互联网协议栈的每一层中至少命名一个协议? 25.什么是子网?IP地址? 26.给定一个IP地址,你如何确定它属于哪个子网? 27.什么是CRC?解释它是如何用于错误检测的? 28.什么是路由?有哪些不同的路由算法? 29.链路状态算法使用哪种算法来寻找最短路径?距离向量算法使用什么来计算新向量? 30.TCP如何确保可靠的数据传输?
数据结构 31.什么是标准的堆栈操作? 32.给定一个无限的数字流,以及这些数字是从堆栈中推送还是从堆栈中弹出,给出堆栈中任何时间点的最大元素,每个操作的时间复杂度为O(1),额外的空间复杂度为O(N)。
算法 33.你知道的所有排序算法及其时间复杂性是什么? 34.用例子解释快速排序?
另外 35.什么是对称和非对称加密? 36.什么是数字签名? 37.SOAP和REST web服务之间有什么区别
拼图 1.100名戴红/黑帽子的囚犯? 参考:https://www.geeksforgeeks.org/puzzle-9-find-the-fastest-3-horses/ 2.找到最快的3匹马。 参考:https://www.geeksforgeeks.org/puzzle-13-100-prisoners-with-redblack-hats/
第三轮(约45分钟):
这也是一次技术回合。它有一些与我的项目、操作系统、网络、算法有关的问题,以及一些一般的人力资源问题(因为这些问题,我想这可能是最后一轮了,但我不知道还会有更多轮)。
他开始询问我为第一轮第二个编码问题编写的代码。我用暴力向他解释。他说优化它。然后我告诉了一些不正确的优化。他只是让我明白这是怎么回事。 然后我说了使用动态规划的解决方案。
算法 1.告诉我有哪种算法的复杂度是O(N),O(logN)?解释为什么这些复杂性是如何确定的? 2.快速排序的最佳和最差时间复杂性是什么? 3.为什么快速排序在最佳情况下具有O(nlogn)复杂度,在最坏情况下具有O(n^2)复杂度?
操作系统 4.什么是细分?寻呼?简单解释一下。 5.可执行文件包含哪些段?什么时候为进程分配堆栈和堆段?映射是如何完成的?
计算机网络 6.TCP和UDP之间有什么区别? 7.什么时候一个优先于另一个? 8.什么是流量控制?解释TCP如何提供流量控制? 9.TCP如何确保可靠的数据传输?一些关于累积确认、重复数据包、重复确认、计时器、缓冲、快速重传的讨论。
一些一般性问题。 1.你夏天做了什么? 2.你实习过吗? 3.你的兴趣是什么?
第四轮(约1.5小时):
这也是一轮技术性的较量,与上一轮相比,这显然对我来说很难。但不知怎的,我还是通过面试官给我的线索/暗示挺了过来。
计算机网络与安全。 1.什么是身份证?SNORT是如何工作的? 2.什么是拒绝服务攻击?具体来说,TCP syn攻击? 3.如何在服务器主机上唯一标识TCP套接字? 4.从客户端主机到服务器主机上的特定套接字最多可以建立多少个同步TCP连接? 5.要同时向某个网络发送100万个数据包(DOS攻击),至少需要多少IP地址? 6.TCP段中的字段是什么? 7.三方TCP握手是如何发生的? 8.握手第三步中的ACK数据包能否在数据字段中包含有效载荷? 9.套接字编程——如何创建套接字和建立连接?编写套接字编程中使用的标准函数。 10.为什么客户端和服务器选择随机的初始序列号?
编码问题 11.在随机单元上有一个nxn网格和一个箭头,其位置未知,其指向的方向也未知。箭头可以指向四个方向中的任意一个(顶部、右侧、底部、左侧)。 允许进行三种操作: i、 goStraight()//将箭头沿其指向的任何方向移动到下一个单元格。 二、isWall()//如果下一个单元格为wall,则返回true,否则返回false。 iii.turnRight()//将箭头向右旋转。 给定一个对象,它有一些隐藏的方法,这些方法会在网格中随机放置箭头,并支持这三种方法。您应该遍历整个网格,即所有单元格,但不使用给定对象遍历任何单元格两次。
12.蛇梯游戏。
你会看到两个元组列表,描述梯子和蛇的初始和最终位置。你需要找到赢得比赛所需的最少移动次数。 参考:https://www.geeksforgeeks.org/snake-ladder-problem-2/
面向对象和语言
13、C++中的虚拟继承是什么? 14、C和C++的主要区别是什么? 15、C++和java有什么不同? 16.宏观和功能的区别是什么?宏可以参数化吗?宏参数是用数据类型指定的吗? 17.在C语言中实现封装、继承、多态等oops概念。 18.编写一个宏来计算任何给定参数的大小,比如sizeof运算符。 19.鉴于以下结构: 构造一些 { char c; int i; 短s; }; 假设是32位架构,结构的大小是多少?
操作系统 20.Unix是否实现按需分页? 21.如何执行系统调用?详细解释。 22.自旋锁和信号量之间的区别? 23.什么时候一个优先于另一个?
第五轮(约20分钟):
这是一个人力资源回合。它有一些一般性的问题,比如:
1.跟我说说你自己。 2.你感兴趣的领域是什么? 3.解释你的项目。关于它的一些讨论。 4.一些关于我家庭背景的问题。 5.你认为自己在未来5年会怎样? 6.您对Citrix有什么问题吗?
最后,经过一个小时的等待,我收到了Citrix的报价。这是我的第一次面试,这是一次很棒的经历。 我对面试的建议是在概念上充分了解你的主题,精通至少一门oops语言,并培养良好的逻辑和分析思维。 感谢Geeksforgeks为练习和学习各种概念提供了这么好的平台。