📜  TCS面试问题

📅  最后修改于: 2021-05-24 17:59:55             🧑  作者: Mango

TCS是一个崭新的职业生涯的理想之地。它提供了一个很棒的工作场所以及一个友好的环境,为个人的成长以及公司的成长提供了积极的氛围。每年,TCS都会进行大规模招聘过程,以选择助理软件工程师的候选人。除了资格标准外,TCS还希望其员工在才能和态度方面表现出色。

TCS面试问题

资格标准

Category Requirement
Marks in 10th Above 60%
Marks in 12th Above 60%
Age limit 18 to 28 years
Degree BE/ME or B.Tech/M.Tech
CGPA More than 6 CGPA
Experience 0-3 years
Year Gap Maximum 2 years

招聘流程

TCS进行了4个回合,以选择新生作为其组织中的助理系统工程师。

  • 书面回合
  • 技术回合
  • 管理回合
  • 人力资源回合

书面回合

书面回合包括四个部分,分配的总时间为90分钟。四个部分包括:

  • 定量能力测验:
    第一个是定量能力测验,其中测试了数字和推理能力部分。 40分钟内需要尝试20个问题。问题的负号为1/3。重要主题包括:数字系统,方程式,比率和比例,百分比,损益,时间和工作,时间速度距离,面积和度量,平均值,排列和组合,概率,平面几何,座位安排,集合,级数,函数,基于系列,编码,真相和谎言的谜题。与定量能力测验有关的问题:
  • 编程语言测试:
    此回合包含来自计算机科学和编程语言的一般问题。它包含10到12个问题,分配的时间为20分钟。这是一轮MCQ回合,基本上由基本的编程问题组成。与MCQ回合相关的问题:
  • 编码回合:
    这是技术编码回合。它由1到2个问题组成,分配的时间为20分钟。
    您可以参考“练习”部分来探索在TCS中提出的问题。
  • 电子邮件编写:将提供某些线索/单词,您必须使用这些线索/单词来编写解决方案的电子邮件。您必须在给定的空格中键入电子邮件。最重要的是,您必须使用所有给定的短语,而不会遗漏任何一个短语。分配的时间为10分钟。与电子邮件撰写有关的问题:

    技术回合

    TCS面试的技术回合中包含要测试候选人的主观知识的问题。此回合包含基于数据结构和算法,DBMS,操作系统,网络,OOP概念和您选择的编程语言的问题。来自CS以外分支机构的学生应准备与其分支机构有关的其他两个科目。 CS学生将被要求在面试中编写代码。在这一轮中,您可能会被问到困惑。要准备拼图,您可以在“拼图”部分进行练习。

    与技术回合相关的问题

    与C / C++编程语言有关的问题:问题1:C与C++有何不同?
    答: C++可以说是C的超集。C++的主要新增功能是面向对象的程序设计,异常处理和丰富的C++库。
    从这里了解C和C++之间的更多区别和相似之处。问题2:什么是静态变量?
    答:静态变量即使在超出范围后也具有保留其值的属性!因此,静态变量在其先前的作用域中保留其先前的值,而不会在新的作用域中再次初始化。问题3:C中的变量是静态范围还是动态范围?
    答: C语言中的变量始终是静态作用域的。请访问变量如何在C中定义范围-静态还是动态?了解更多。问题4:解释C中的四个存储类?
    答:存储类用于描述变量/函数。 C中的四个存储类是:

    1. 自动:这是在函数或块内声明的所有变量的默认存储类。
    2. extern: Extern存储类仅告诉我们该变量是在其他位置定义的,而不是在使用该变量的同一个块中定义的。
    3. 静态:此存储类用于声明静态变量,这些静态变量在用C语言编写程序时经常使用。
    4. register:它声明与自动变量具有相同功能的寄存器变量。

    问题5:“按价值传递”和“按引用传递”是什么意思?
    答:在C语言中,我们可以通过两种不同的方式在函数中传递参数:

    • 按值传递:实际变量的副本在函数作为参数传递。
    • 按引用传递:实际变量的内存地址,函数作为参数传递。

    有关C / C++中的参数传递技术的更多信息。
    在C / C++中传递参数的实践问题。问题6:宏是什么意思?
    答:宏是程序中的一段代码,具有一定的名称。只要编译器遇到此名称,它就会用实际的代码片段替换该名称。问题7:C中的结构是什么?
    答:结构是C / C++中用户定义的数据类型。结构创建一个数据类型,该数据类型可用于将可能不同类型的项目分组为单个类型。

    问题8:编写程序以查找给定数组中元素的总和。
    答:程序可以查找给定数组中元素的总和问题9:编写程序以反转数组或字符串。
    答案:编程以反转数组或字符串。问题10:编写以下代码的输出:

    #include  
    int main() 
    { 
        int x = 10, *y, **z; 
        
        y = &x; 
        z = &y; 
        printf("%d %d %d", *y, **z, *(*z)); 
        return 0; 
    } 
    

    输出:

    10 10 10

    与OOP相关的问题:问题1:面向对象编程的主要概念是什么?
    答:面向对象编程或OOP是指在编程中使用对象的语言。 OOP的主要目的是将数据和对其进行操作的功能绑定在一起,以便除该函数外,代码的其他任何部分都无法访问此数据。
    OOP的主要概念是:

    • 多态性
    • 遗产
    • 封装形式
    • 抽象化

    问题2:什么是类和对象?
    答:类和对象是面向对象编程的两个主要方面:
    类:类是用户定义的蓝图或原型,从中可以创建对象。它表示一种类型的所有对象共有的一组属性或方法。
    对象:对象是具有某些特征和行为的可识别实体。对象是类的实例。当定义了一个类时,不分配内存,而是在实例化(即创建对象)时分配内存。问题3:有哪些不同类型的继承?
    答:继承类型:

    1. 单继承
    2. 多重继承
    3. 多层次继承
    4. 层次继承
    5. 混合继承

    问题4:区分函数重载和函数重载。
    答:函数重载通过更改签名即改变参数的数量提供了函数的多个定义,更改参数的数据类型,返回类型没有起到任何作用,而函数重载是基类函数的重新定义与它的派生类相同的签名,即返回类型和参数。问题5:给出基于现实生活的多态性实现。
    答:现实生活中多态的例子,一个人同时可以具有不同的特征。像男人一样,是父亲,丈夫,雇员。因此,同一个人在不同情况下会表现出不同的行为。这称为多态。问题6:什么是访问修饰符?
    答:访问修饰符用于实现面向对象编程的一项重要功能,即数据隐藏。类中的访问修饰符或访问说明符用于设置类成员的可访问性。也就是说,它对类成员设置了一些限制,使其不能被外部函数直接访问。问题7:区分结构和类。
    答案:结构与类相同,但有一些区别。其中最重要的是安全性。结构不是安全的,并且在类是安全的并且不能隐藏其编程和设计细节的同时,不能向最终用户隐藏其实现细节。有关更多详细信息,请参见结构与类。问题8:C++类是否可以具有自类型的对象?
    答案:类声明可以包含self类型的静态对象,也可以具有指向self类型的指针,但是不能具有self类型的非静态对象。问题9:为什么在C++中空类的大小不为零?
    答:空类的大小不为零。通常是1个字节。确保两个不同的对象具有不同的地址是非零的。问题10:Friend类和Friend函数是什么意思?
    回答:
    朋友类:朋友类可以访问其他被声明为朋友的类的私有和受保护成员。有时允许特定的类访问另一个类的私有成员很有用。
    朋友函数:像朋友类一样,可以对朋友函数进行特殊授予,以访问私有成员和受保护成员。与Java编程语言有关的问题:问题1: Java平台如何独立?
    答:与平台无关的含义是Java编译的代码(字节码)可以在所有操作系统上运行。 Java代码在JVM上编译和运行,并且JVM与平台无关,这就是Java能够成为“平台独立”的原因。问题2: Java的主要方法是强制性的吗?
    答:在JDK 7之前,主要方法在Java程序中不是必需的。但是,从JDK7开始,主要方法是强制性的。编译器将首先验证main()是否存在。如果您的程序不包含main方法,则将收到错误“在类中找不到main方法”。问题3:解释接口和类之间的区别。
    回答:
    类是用户定义的蓝图或原型,从中可以创建对象。它表示一种类型的所有对象共有的一组属性或方法,而接口也可以具有方法和变量,但是默认情况下,在接口中声明的方法是抽象的(仅方法签名,没有主体)。请参见Java的Interface vs Class。问题4:如何运行不同目录中的Java类文件?
    答: Classpath是JVM开始执行程序的位置。与经典的动态加载行为类似, Java虚拟机在执行Java程序时会懒惰地查找和加载类(仅在首次使用该类时才加载类的字节码)。类路径告诉Java在文件系统中何处查找定义这些类的文件。问题5:为什么Java不是纯粹的面向对象语言?
    答: Java支持OOPs属性,例如封装,继承,多态,抽象等,但是它缺少某些属性,因此它不是纯面向对象的语言。问题6: Java对象如何存储在内存中?
    答:在Java,所有对象都在堆上动态分配。这与C++不同,在C++中,可以在堆栈或堆上为对象分配内存。问题7: Java的Null指针异常是什么?
    答: NullPointerException是RuntimeException。在Java,可以将特殊的null值分配给对象引用。当程序尝试使用具有空值的对象引用时,将引发NullPointerException。问题8:以下程序的输出是什么?

    import java.util.*; 
        
    public class Test { 
    public static void main(String[] args) 
        { 
            int[] x = { 120, 200, 016 }; 
            for (int i = 0; i < x.length; i++) 
                System.out.print(x[i] + " "); 
        } 
    } 
    

    输出:

    120 200 14

    问题9:编写Java程序以将两个任意大小的矩阵相乘。
    答案:程序可以将两个任意大小的矩阵相乘问题10:编写Java程序以从ArrayList中删除第一个元素。
    答:从ArrayList中删除第一个元素的程序。与DBMS相关的问题:问题1:DBMS有什么需求?
    答:数据库管理系统是用于轻松,高效和可靠地进行数据处理和管理的系统软件。它可用于创建数据库,从数据库检索信息,更新数据库和管理数据库。 DBMS还有其他各种需求。问题2:什么是数据抽象和数据独立性?
    答:数据库系统由复杂的数据结构组成。为了使系统在数据检索方面高效,并在用户可用性方面降低复杂性,开发人员使用抽象,即向用户隐藏无关的细节。这种方法简化了数据库设计。
    数据抽象的主要目的是实现数据独立性,以节省修改或更改数据库时所需的时间和成本。问题3:DBMS中的接口是什么?
    答:数据库管理系统(DBMS)界面是一个用户界面,它允许在不使用查询语言本身的情况下向数据库输入查询。要了解更多信息,请访问DBMS中的Interfaces。问题4:什么是数据库架构?
    答: “模式”一词是指将数据的组织作为构建数据库的蓝图(在关系数据库的情况下分为数据库表)。数据库模式的正式定义是一组施加在数据库上的称为完整性约束的公式(句子)。问题5:什么是外键?
    答:外键是表中的一组属性,用于引用相同或其他表的主键或替代键。问题6:内部联接和外部联接之间的区别。
    答: SQL Join用于根据两个或多个表之间的公共字段合并数据。内部联接与外部联接。问题7:假设(A,B)和(C,D)是两个关系模式。令r1和r2为对应的关系实例。 B是在r2中引用C的外键。如果r1和r2中的数据满足参照完整性约束,那么以下哪项始终为TRUE?

    答: A。请参阅说明。问题8:说明ACID属性。
    答: ACID代表原子性,一致性,隔离性和耐用性。为了维护数据库的一致性,在事务处理之前和之后,都遵循某些属性。这些称为ACID属性。问题9:什么是DBMS中的死锁?
    答:在数据库中,死锁是一种不希望的情况,其中两个或多个事务无限期地等待对方放弃锁。死锁被认为是DBMS中最令人担忧的并发症之一,因为它使整个系统暂停。问题10:什么是SQL中的嵌套查询?举个例子。
    答:在嵌套查询中,查询写在查询内部。内部查询的结果用于外部查询的执行。参见示例。与数据结构有关的问题:问题1:什么是数据结构?
    答:数据结构是在计算机中组织数据以便有效使用的一种特殊方式。问题2:堆栈和队列有什么区别?
    回答:
    堆栈:堆栈是一种线性数据结构,其中只能从列表的一侧(称为顶部)插入和删除元素。堆栈遵循LIFO(后进先出)原则,即,最后插入的元素是第一个出现的元素。队列:队列是一种线性数据结构,其中元素只能从称为后方的列表的一侧插入,而元素只能从称为前方的另一侧删除。队列数据结构遵循FIFO(先进先出)原则,即,首先插入列表中的元素是要从列表中删除的第一个元素。
    要了解更多信息,请访问堆栈与队列。问题3:聚集索引和非聚集索引有什么区别?
    答案:聚集索引是一种特殊的索引,它重新排序表中记录的物理存储方式,而非聚集索引是一种特殊的索引,其中索引的逻辑顺序与索引的物理存储顺序不匹配。磁盘上的行。问题4:区分数组和链表。
    答:数组和链表都可以用来存储相似类型的线性数据,但是它们彼此之间有一些优缺点。数组和链表之间的关键区别。问题5:什么是双链表?
    答案:A d oubly大号签署大号IST(DLL)中包含一个额外的指针,通常被称为前一指针,旁边的指针,哪些是有在单链表数据一起。问题6:什么是二叉搜索树?
    答:二进制搜索树是一种基于节点的二进制树数据结构,具有以下属性:

    • 节点的左子树仅包含键值小于节点键值的节点。
    • 节点的右子树仅包含键大于该节点的键的节点。
    • 左和右子树也都必须是二叉搜索树。
    • 不得有重复的节点。

    问题7:与哈希表相比,BST有哪些优势?
    答:自平衡二进制搜索树(BST)(如红黑树,AVL树,Splay树等)中的搜索,插入和删除操作的时间复杂度为O(Logn),而哈希表支持以下操作: O(1)时间。
    哈希表相对于BST的优势。问题8:如果给定两个遍历序列,可以构造二叉树吗?
    答:这取决于给出的遍历。如果遍历方法之一是Inorder,则可以构造树,否则不能构造。问题9:图表的BFS和DFS使用哪种数据结构?
    回答:

    • 队列用于BFS
    • 堆栈用于DFS。 DFS也可以使用递归实现(请注意,递归还使用函数调用堆栈)。

    问题10:对于以第一个节点为头的给定链接列表,以下函数做什么?

    void fun1(struct node* head)
    {
      if(head == NULL)
        return;
      
      fun1(head->next);
      printf("%d  ", head->data);
    }

    答:它以相反的顺序打印链接列表的所有节点。请参阅说明。

    技术面试入门技巧

    管理回合

    此回合包括技术回合中的所有内容,并将承受压力和大量的交叉核对。您的答案将产生疑问,以检查您是否可以应对压力。根据上一轮的反馈,学生可能会也可能不会被发送到本轮。如果上一轮的反馈很好,您可能希望直接将其发送给HR轮。本轮谈判的关键是要保持镇定,自信,清楚自己的思想,并且不放弃压力。如果您不知道答案,则必须尝试使用任何您知道的答案。

    人力资源回合

    这是招聘过程的最后一轮。面试小组可以向您提问与您的个性,家庭,教育,嗜好,实习,常识等相关的任何事情。
    这里的关键是要对您所说的一切都充满信心。与人力资源回合相关的问题:问题1:告诉我一些有关您自己的事情。
    答:这是第一个问题,在每轮采访中都必定会问到。回答这个问题的最好方法是告诉面试官您的兴趣,技能,资历,成就等。尽量避免告诉简历中已经提到的内容,并确保不要听起来像是在抢劫这个答案。 。

    问题2:您的优点和缺点是什么?
    答:这是人力资源采访中最常见的问题之一。回答这个问题时要诚实。不要犹豫,提及自己的长处,而仅通过挑选对您有帮助的主要力量,尽量将数字保持在3-4。在提及缺点时,请尝试将其表现为优点,或为“您准备如何克服此缺点?”的答案作准备。

    问题3:为什么要雇用您?
    答:回答此问题的最佳方法是向面试官介绍您的技能,以及您打算如何将其用于公司的发展。

    问题4:您将如何应对工作压力?
    答案:尝试通过举例说明您以前的经验来回答这个问题。告诉他/她到目前为止的生活状况,您一直承受着压力,但仍然设法在规定的期限内完成了任务。

    问题5:您为什么要加入我们?
    答:这个问题将反映您对公司所做的研究数量。您可以提及公司的成就,工作文化,与员工的行为,工作与生活之间的平衡以及其他与公司有关的积极方面。

    问题6:您的薪金期望是多少?
    答:这可能是一个棘手的问题。如果您是新手,则永远不要在录取通知书中引用您想要的确切金额。您可以向他/她询问公司通常向员工提供的加薪,但不提供金额。

    问题7:您对轮换感到满意吗?
    答:这是在IT公司(如TCS,CTS,Wipro,Infosys等)采访中最常见的问题。回答“是”肯定会增加您获得工作的机会,但建议您说“是”。仅当您实际上对轮换感到满意时。

    问题8:您为什么要寻找工作变动?
    答:如果您是经验丰富的专业人士并且正在寻求改变,这是一个常见的问题。回答这个问题的最好方法就是说,您正在为发展而改变当前的工作。确保您不对您当前所在的公司发表负面评论或批评。

    准备人力资源面试的技巧
    面试经验示例:

    如果您知道那时会有什么总是很有益的。因此,为了给您带来好处,我们为您提供了较早遇到您的候选人的面试经历。充分利用它。

    1. TCS面试经验|套装1(校园内)
    2. TCS面试经验|套装2(校园招聘驱动器)
    3. TCS面试经验|第三组(校园招聘驱动器)
    4. TCS DESS面试经验|第四组(校园内)
    5. TCS面试经验|第五组(校园内)
    6. TCS面试经验|套餐6(校园内)
    7. TCS面试经验|套装7(校外)
    8. TCS面试经验|套餐8(校园内)