本文概述
TCS(塔塔咨询服务)有限公司是一家印度跨国公司, 从事咨询服务和信息技术业务。它的总部位于印度孟买。它是塔塔集团的一部分, 在46个国家/地区运营。
TCS是按市值计最大的印度公司之一, 也是全球最受信任的印度品牌之一。仅它本身就产生了其母公司塔塔儿子的70%的股息。
最近, 塔塔集团(Tata Sons)决定大宗出售价值为12.5亿美元的TCS股票。 2015年, TCS在《福布斯》全球最具创新力公司排名中总体排名第64位, 既是排名最高的IT服务公司, 又是印度排名最高的公司。
TCS是全球第二大IT服务提供商。 2017年, TCS在《财富》印度500强榜单中排名第十。 2018年4月, TCS成为第一家突破1000亿美元市值的印度IT公司。
招聘流程
TCS通常进行3个回合来选择较新的组织中的软件开发人员。
- 能力倾向测试
- 技术面试
- 人力资源面试
招聘活动首先要进行笔试, 然后是一对一的面试。他们还可以对一些学生进行小组讨论。有时, 他们放弃对75岁以上的学生进行笔试, 并且允许他们直接参加面试, 而无需笔试。
在技术回合中, 通常会向较新的应聘者提出有关其最终项目和接受培训的单一技术的问题。
学术标准
B.Tech, Class X和XII达到65%或以上。
面试时没有积压
TCS技术面试问题
1)解释链表的功能。
链接列表由两部分组成:信息和链接。在单连接侦听中, 列表的开头由名为start的唯一指针标记。该指针确实指向列表的第一个元素, 并且每个节点的链接部分都包含一个指向下一个节点的箭头, 但是列表的最后一个节点具有标识前一个节点的空指针。借助开始指针, 可以轻松遍历链接列表。
2)OOPS的四个基本原则是什么?
下面列出了面向对象编程系统的四个基本原理:
- 抽象:抽象是一个隐藏实现细节并仅向用户显示功能的过程。例如, 在你键入文本的位置发送SMS并发送消息。你不知道有关邮件传递的内部处理。
- 抽象使你可以专注于对象的功能, 而不是对象的功能。
- 继承:Java中的继承是一种机制, 其中一个对象获取父对象的所有属性和行为。
- 封装:Java中的封装是将代码和数据包装到单个单元中的过程, 例如, 将多种药物混合在一起的胶囊。
- 多态:Java中的多态是一个概念, 通过它我们可以以不同的方式执行单个操作。多态性源自两个希腊词:poly和morphs。单词” poly”表示很多, ” morphs”表示形式。因此, 多态性意味着多种形式。
3)什么是继承?
在面向对象编程中, 继承是一种基于类的机制。
继承是指将父类的数据成员和属性继承到子类。从另一个级别派生的类通常称为子类或子类, 从中获得子类的类型称为超类或父类。
4)如何将一个类的变量继承给其他任何类?
//Base Class
class A
{
public int a;
}
//Derived Class
class B : A
{
a=15;
}
5)什么是多态?
多态是OOPS中的一个概念, 意味着具有多种形式。简单来说, 这意味着将在不同的实例中执行不同的动作。多态性有两种类型:
- 方法重载
- 运算符重载
6)继承有哪些不同类型?
继承类型:
- 单继承
- 多重继承
- 多层次继承
- 多路径继承
- 层次继承
- 混合继承
7)类和接口有什么区别?
下面列出了类和接口之间的区别:
- 可以通过创建其对象来实例化一个类, 而不能实例化接口, 因为接口中的所有方法都是抽象的并且不执行任何操作, 因此不使用实例化接口。
- 使用class关键字声明一个类, 而使用interface关键字声明一个接口。
- 类的成员可以具有访问说明符, 例如public, protected和private, 但是接口的成员不能具有访问说明符, 因为接口用于派生另一个类, 所以接口的所有成员都声明为public。访问接口成员内部的指定将无济于事。
- 定义了类内部的方法以对在类中声明的字段执行某些操作, 而接口在区域中缺少断言, 接口中的方式纯粹是抽象的。
- 一个类可以实现任意数量的接口, 但只能扩展一个超类。接口可以到达任意数量的接口, 但不能执行任何接口。
- 一个类可以在该类内部定义一个构造函数以声明该类内部的字段, 而interface没有定义任何构造函数, 因为没有要初始化的字段。
8)什么是软件开发生命周期?
软件开发生命周期是软件开发阶段生命周期中涉及的步骤。通常, 由开发团队负责在组织中开发软件。它包含有关开发和维护软件的清晰说明。
9)什么是数据库, 联接和键的规范化?
规范化是高效组织数据库中数据的过程。规范化过程的两个目标是:消除冗余数据(例如, 将同一数据存储在一个以上的表中), 并确保数据依存关系有意义(仅将相关数据存储在一个表中)。这两者都很重要, 因为它们减少了数据库消耗的空间, 并确保逻辑上存储数据。
10)什么是循环?
循环用于在程序中根据条件语句多次执行语句块。电路的基本结构在上图中给出。对于每次成功执行循环, 应检查条件语句。如果条件语句为真, 则电路将被执行。如果条件语句为假, 则该课程将终止。
11)解释联接, 视图, 规范化, 触发器吗?
根据这些表中特定列之间的关系, 在SQL语句中使用JOIN关键字从两个或多个表中查询数据。
数据库中的表通常通过键相互关联。
视图是一个虚拟表。外观包含行和列, 就像真实表一样。图片中的字段是数据库中一个或多个实际表中的字段。
你可以在视图中添加SQL函数, WHERE和JOIN语句, 并将数据呈现为好像数据来自单个表一样。
12)列出DBMS的不同优点
改进的数据共享。
数据库管理系统的几个优点列表:
- 改善了数据安全性。
- 更好的数据集成。
- 最小化数据不一致。
- 改进的数据访问。
- 改进决策。
- 提高最终用户的生产率。
13)什么是数据库管理系统?
数据库管理系统是用于创建和管理数据库的软件系统。 DBMS使最终用户可以构建和维护数据库。 DBMS提供了最终用户/应用程序与数据库之间的接口。
14)什么是数据库架构?
数据库模式的正式定义是一组施加在数据库上的称为完整性约束的公式(句子)。
15)条件语句是什么?
也可以将条件语句也称为条件表达式。条件注释是在特定条件为真时执行的一组规则。通常将其称为if-then语句, 因为如果状态为true, 则将执行该语句。
16)外键和参考键有什么区别?
引用键是在另一个表中引用的主键(通过其他表外键链接)。外键是如何将第二个表连接到主表的主键(或参考键)。
17)C和C ++有什么区别和相似之处?
C ++有类, 而C没有类。
C不支持函数重载。在C语言中, 对于输入或输出, 我们使用诸如gets(), puts(), scanf(), printf()等函数。
C不支持异常处理。
18)位图和b树索引之间的结构差异?
Btree
它由分支节点和叶节点组成。分支节点持有前缀键值以及到叶节点的链接, 并且叶节点包含索引值并按行排列。
位图
它仅由每个单独值的位组成。它使用一串位来快速定位表中的行。它用于索引低基数列。
19)聚集索引和非聚集索引有什么区别?
聚集索引
- 每桌一张
- 比非集群更快地读取数据, 因为数据以索引顺序进行物理存储
非聚集索引
- 每张桌子可以使用很多次
- 插入和更新操作比聚集索引更快
20)区分套接字和会话?
套接字是IP地址和端口号的组合(成对)
会话是源与目标之间的逻辑连接。
21)什么是数组?
数组是相似元素的集合。对于数组, 必要条件是数组中所有元素的数据类型必须相同。 C ++中数组的声明如下:
int a [10];
这定义了一个名称为a的数组, 该数组具有从索引0-9开始的十个元素
22)给定一个1和0的数组, 在数组的一次扫描中将1和0排列在一起。优化边界条件。
#include<stdio.h>
#include<conio.h>
void main()
{
int A[10]={'0', '1', '0', '1', '0', '0', '0', '1', '0', '1', '0', '0'};
int x=0, y=A.length-1;
while(x
x++;
else if(A[y])
y--;
if(A[x] && !A[y])//here we are checking that stating index is having 1 and last index having 0 than swap values
A[x]=0, A[y]=1;
}
getch();
}
23)定义数据抽象。它们的重要性是什么?
抽象是识别并关注情境或对象的基本特征, 并忽略/过滤该情境或对象的不需要成分的过程。
抽象是软件开发的基础。通过这个概念, 我们定义了系统的基本方面。识别和设计给定系统的构想的过程称为建模(objectmodeling)。
数据抽象的三个级别是:
- 逻辑级别:存储在数据库中的信息。例如, 数据库管理员
- 物理级别:数据物理存储在数据库中的位置。
- 视图级别:最终用户始终在视图级别上工作。如果进行了任何修改, 则可以用其他名称保存。
24)编写一个函数, 以在不使用临时变量的情况下交换两个数字。
void swap(int &i, int &j)
{
i=i+j;
j=i-j;
i=i-j;
}
25)C / C ++中的内存分配
calloc()函数分配一个内存区域;长度将是其参数的乘积(它有两个设置)。 calloc用零填充内存, 并返回指向第一个字节的指针。如果无法找到足够的空间, 则返回NULL指针。
malloc()函数分配一个内存区域; length将作为参数输入的值。 (它有一个参数)。它不初始化存储区
free()函数用于释放分配的内存(通过calloc和malloc分配), 换句话说, 此函数用于释放分配的内存
new还用于在堆上分配内存并使用构造函数初始化内存
删除新操作员分配的已使用释放内存
26)写程序输出?
int i=10;
printf("%d%d%d", i, ++i, i++);
答案= 10 12 12
27)什么是虚函数和纯虚函数?
虚函数:-为了实现多态, 将基类中的函数声明为虚函数。通过状态虚拟, 我们使基类指针执行任何派生类的目的取决于指针的内容(任何获取的类地址)。
纯虚函数:-这是基类中使用的函数, 必须在派生类中提供其定义;在其他纯虚函数中, 在基中没有定义的声明为:
virtual void fun()=0;
这意味着该函数将无能为力, 如果纯虚函数派生函数必须
实现纯虚函数或将其重新声明为纯虚函数
28)什么是WPF和WCF?
WPF / WCF应用程序, 需要.NET 3.0 Framework。这些应用程序将涵盖以下概念:
WCF(Windows Communication Foundation)
- 面向新服务的属性
- 接口的使用
- 回调的使用
- 异步委托
- 创建代理
WPF(Windows Presentation Foundation)
- 款式
- 范本
- 动画制作
- 数据绑定
29)用C编写一个程序, 以在没有第三个变量帮助的情况下交换两个数字。
/*
* C++ program to swap two numbers without using a temporary variable
*/
#include<iostream>
using namespace std;
/* Function for swapping the values */
void swap(int &a, int &b)
{
b = a + b;
a = b - a;
b = b - a;
}
int main()
{
int a, b;
cout << "Enter two numbers to be swapped : ";
cin >> a >> b;
swap(a, b);
cout << "The two numbers after swapping become :" << endl;
cout << "Value of a : " << a << endl;
cout << "Value of b : " << b << endl;
}
30)以下代码将输出什么?
// file name: Main.java
class Complex {
private double re, im;
public Complex(double re, double it) {
this.re = re;
this.im = im;
}
}
// Driver class to test the Complex level
public class Main {
public static void main(String[] args) {
Complex c1 = new Complex(10, 15);
System.out.println(c1);
}
}
31)查找以下程序的输出。
public class Prg {
public static void main(String args[]){
System.out.print("A" + "B" + 'A');
}
}
32)以下程序的输出是什么?
public class Prg {
public static void main(String args[]){
System.out.print('A' + 'B');
}
}
33)以下程序的输出是什么?
public class Prg {
public static void main(String[] args) {
char [] str={'i', 'n', 'c', 'l', 'u', 'd', 'e', 'h', 'e', 'l', 'p'};
System.out.println(str.toString());
}
}
34)后续程序将输出什么?
public class pg {
public static void main(String[] args) {
System.out.print("Hello");
System.out.println("Guys!");
}
}
35)后续程序的输出是什么?
class Test2 {
public
static void main(String[] args)
{
byte x = 12;
byte y = 13;
byte result = x + y;
System.out.print(result);
}
}
36)后续程序的输出是什么?
#include <stdio.h>
union test {
int x;
char arr[8];
int y;
} u;
int main()
{
printf("%u", sizeof(u));
return 0;
}
TCS HR面试问题
1)告诉我们一些关于你自己的事情。
我叫Abhinav。我属于德里。我出生于家乡, 在德里长大。我是一个喜欢探索新领域并结识新朋友的人。来到我的学术界, 我以64%的成绩通过了GNIOT(大诺伊达大学)的B.Tech。我已经获得了XII类的72%和X类的8.2 CGPA的保证。在我的家庭中, 我有父亲, 母亲, 祖父和祖母。我曾在Noida的srcmini工作过x个月, 是一名内容作家, 并且获得了很多有关各种语言的知识。
2)你想更改域名吗?如果是, 为什么?
我想在一个组织中工作, 可以发展从我的教育背景中学到的技能, 并开发在整个职业生涯中都将受益的技能, 这项工作与我的专业知识完全相关, 并且对我有帮助我提高了待办事项清单上的沟通技巧。因此, 我想与这样一个大型组织建立联系, 并提高我一直想升级的技能。
3)描述你的经历, 其中要求你做一些你不想做的事情以及如何处理?
这是一个典型的问题, 它测试你的思维和沟通能力。收集你生活中的任何实例并就此发表意见。
供你参考, 提供了示例答案。你的答案将与此答案有所不同, 但可能会有所帮助。
我有很多生活中的例子, 我不得不执行我不喜欢执行的任务, 但是由于这些任务是强制性的, 因此退缩不是我可以承受的选择。我想分享的一个这样的记忆是从9年级开始的, 当时我们不得不学习梵语, 因为我们的学校在9年级以后没有在北印度语和梵语之间的选择, 所以起初我并不关心这个主题, 但是当我开始研究它时, 我发现这个主题很复杂, 我也意识到我并不擅长记住事情, 因此这个主题对我来说是一个艰巨的任务, 但是由于我告诉我退缩不是一个选择, 所以我决定寻求父母, 朋友的帮助和其他可靠的资料来源, 并在剩余的时间里努力工作, 最后的努力得到了回报, 尽管我没有获得出色的成绩, 但我取得的成绩却使我难以相信我可以再追溯几个月。
4)你对公司的期望是什么?
尽管此答案是客观的, 并且对于不同的人可能有所不同, 但请记住对你的想法持肯定态度, 不要对公司说太多话, 这会使面试官感到你在夸大其词。
简而言之, 要现实而精确。
很久以来, 我一直想与一家IT公司合作, 以最好的方式对待其员工。我一直想与一个提供非常舒适和像家庭一样的工作环境的组织合作, 谈到TCS, 我发现这两个要求都得到了满足。甚至我难以想象的要求都可以满足, 最重要的是, 我有机会学习和增强自己的技能, 以便将来成为更好的专业人士。
5)你会舒适地搬家吗?
请记住, 这个答案需要明确的答复, 并且想知道, 因为公司可能会提供不时旅行的机会, 因此请不要试图做得好, 并且如果你无法更改地点, 请明确告诉他们他们是否有此类职位。发布后他们会考虑你的。另外, 请参阅下面给出的示例答案。
是的, 作为成长的一部分, 我曾经经常出差, 因为父亲是一名前军人, 因此他偶尔会在全国各地任职。尽管我更喜欢城市, 因为它可以帮助我与人生活, 但我很在意, 但与此同时, 我可以搬迁。
6)住在德里(你所在的州)的感觉如何?
你可以说出关于你的状态的独特信息;正如坚持实事求是地说的那样, 这可能包含你可能想要改善的事情。
德里是印度最繁忙的城市之一, 尽管我对印度以外的城镇一无所知, 但希望它也将成为最活跃的城市。像孟买这样的德里从来没有睡过, 而在德里, 我们知道有很多地方可以漫步和探索。也是许多州和印度首都的中心, 它是许多国家的吸引力中心, 因此, 由于不断迁徙, 我们发现有许多人居住在德里。此外, 德里有各种各样的市场, 也有一流的医院和设施, 可以与全球最好的医院和设施相提并论。因此, 住在德里就像梦想成真。
7)告诉我有关你一生中最难忘的一天的事吗?
通过这个问题, 面试官想检查一下你是否可以应付现场情况, 花一些时间收集你的想法并发表意见。
我一生中最难忘的一天将是我毕业的那一天。那天, 我觉得现在我可以得到一份受人尊敬的工作, 过着独立的生活, 慢慢地, 稳步地, 我已经从一个依赖男孩变成了独立男人。我现在已经足够成熟, 可以做出人生决定, 决定什么对我合适, 什么对我不合适。那天, 我意识到了为什么我的祖父和老人如此怀旧, 对我们国家的独立拥有如此多的记忆, 而这么小的字眼的独立性可能会具有如此巨大的意义。
8)你的优势是什么?
永远不要说出当场无法证明的优势。只讲真实的力量。
在我看来, 我是一个一直热爱团队合作的团队成员, 为团队的不断进步而努力使我感到自豪, 而担任队长或同事们的领导一直是我一直热爱的工作。
另外, 很难得到的东西我都喜欢得到, 尽管听上去有点让人困惑, 所以让我详细说明一个例子。毕业后, 我还没有掌握通过沟通技巧获得出色工作所需的技能, 但是我确实缺乏技术部分, 非职业的工作对我来说很容易, 他们的薪资水平也很有吸引力, 我很难学习编程技巧并擅长编码, 但是我决定努力工作直到我成功了, 此后我从事技术领域工作, 现在我就在这里。
9)你的弱点是什么?
虽然这是一个棘手的问题, 但不是诱饵, 即面试官想知道你的弱点, 但要告诉他弱点, 从某种意义上说, 它们也可以说是你的强项。
尽管你很难看到自己的弱点, 因为我们都知道, 人类普遍的倾向是转移责任, 从不为任何不当行为负责。但是说实话, 我发现当我想要取得成就时, 我会努力工作, 尽管为获得工作后获得的幸福而努力工作可能并不值得, 但与此同时我想念同时发生的另一个事件。
10)我们为什么要雇用你?
一个非常典型的问题, 需要明智地回答。
这项工作的要求完全符合我的技能要求, 作为候选人, 我在该领域有丰富的经验, 这可能对组织和我都有利。而且, 我是一个快速学习者和团队合作者, 因此组织不必花很多时间和资源在我身上。即使在工作时, 我也会为组织的最大利益而努力。此外, 我将接触该行业, 这将对我的职业生涯非常有益。
11)有什么让你与其他应聘者不同的东西吗?
再次…要现实
是的, 有很多事情使我与众不同。每个人都不一样。但是, 如果你问我内在的积极品质, 那么我会说我是一个团队合作者, 学习能力强, 并且具有一定的领导才能。虽然这些想法对个人而言是客观的, 但当你认识我个人时, 这些想法会更好地被理解。
12)你对取消货币化有何看法?
这是一个重要的讨论话题, 我有很多话要说, 但是考虑到这次采访的时间很短, 我想总结一下:
- 我会说这是一个非常重要的决定, 但在实施方面却不是那么重要。
- 政府应该对在最初阶段死亡的许多人采取立场。
- 由于没有多少人拥有黑钱, 因此没有完全实现这一目标。
- 我国的国内生产总值增加了。
- 总而言之, 这一行动有很多积极和消极的作用, 因此得出结论将是不公正的。
13)告诉我你的日常工作吗?
只需描述一下你的例程即可。
如今, 我的日程安排很忙, 而且我一直在忙着度假或休息, 但正如你所问的那样, 我将我的日常工作描述为:
我在0700小时醒来。我执行所有日常琐事, 并准备在大约0800小时离开办公室。我乘地铁上下班, 然后估计在0930小时到达办公室。我在那里工作到1300小时, 然后我们休息了一个半小时, 休息后, 我们重新开始工作, 并且我从1530到1700参加了Java课, 完成课程后, 我工作了大约90分钟, 在1830时, 我启程回家。同样, 我的房子距地铁90分钟车程, 到2000小时, 我回到家看了一部精彩的电影, 等电影结束后, 我便入睡了, 一天结束了, 第二天又恢复了工作。
14)提及此个人资料应具有的五种素质?
取决于工作。
15)在你感兴趣的任何话题上讲至少5分钟。
你必须谈论任何话题。
16)描述你在假期期间参观任何地方的经历。
你需要描述任何经验。
17)你是否有过工作经验?如果是这样, 请告诉我们你的上一份工作以及你离职的原因。
你可以讲述自己的工作经历以及为什么离开, 但不要给出负面答案, 因为它们会带来负面影响。诸如增长, 更好的机会之类的答案, 可以进一步提高你的技能。
18)你的爱好是什么?
你可以说出你的爱好。你必须准备好兴趣爱好中的问题。
19)你认为领导者应具备什么素质?
领导者应该具备许多素质, 但仅举几例, 领导者应该能够协调团队, 他应该对人及其在不同时间点的行为有很好的理解, 他应该能够找到可以依靠, 他应该能够在一群人中脱颖而出, 他应该能够指导一群人, 他应该具有统治力, 还有更多的人在那里。
20)在这里申请之前, 你是否曾在任何地方申请过?在此之前, 你收到了多少工作机会?
No
单击此处查看:人力资源面试问题与解答
评论前必须登录!
注册