最新!IGATE热门面试问题汇总

本文概述

IGATE面试问题

关于公司:IGATE

IGATE(现为凯捷集团的一部分)是领先的信息技术公司之一。它的总部位于美国新泽西州的布里奇沃特。 IGATE是全球领先的咨询, 技术和外包服务提供商之一, 在40个国家/地区拥有180, 000名员工。它成立于1996年, 并于2015年4月27日被法国IT服务集团Capgemini收购。

关键人物:

  • 创始人:Narendra Patni
  • 联合创始人Sunil Wadhwani
  • 公司首席执行官:Srinivas然后

iGate招聘流程


完整的招聘过程需要经过各种回合。每一轮打开下一轮的大门。该过程主要涉及三轮。这些回合是:

  1. 第一:书面回合
  2. 第二:技术面试
  3. 第三:人力资源面试

第一回合:书面回合


描述

IGATE招聘过程的第一轮是笔试。它主要包括”通用能力”和”英语水平测试”两部分。完整测试共有60个问题, 并且带有负号.25 /错误的答案

书面测试模式:

英语水平:20个问题

定量能力:15个问题

言语推理:15个问题


口语英语面试题


填写正确选项。

1)如果Riya ________准备好________在屋子里, 我会把它出租出去, 因为它很久没有空房了。

  1. 是, 留下来
  2. 是, 留下来
  3. 会留下来
  4. 是, 留下来

显示答案

答案:d


2)约翰_____________。

  1. ran
  2. 跌倒了
  3. 坐着
  4. 停止了

显示答案

答:一个


3)_________匹配以点燃房间里的蜡烛。

  1. 击中
  2. 罢工

显示答案

答案:c


4)每位学生在本学期________例外必须遵守这些指示。

  1. 在, 与
  2. 整个, 没有
  3. 在, 在
  4. 有没有

显示答案

答案:b


5)在罗汉(Rohan)的家人中, 当他们坐在________餐桌上时, __________一家人喜欢做所有的____________闲聊。

  1. 一个, 一个, 一个
  2. 一个, 一个
  3. 那个

显示答案

答案:d


6)我在旅行时想念________今天的新闻。

  1. 观看
  2. 观看
  3. 看过

显示答案

答:一个


7)找到单词” QUIESCENT”的反义词。

  1. 活性
  2. 休眠
  3. 漠不关心

显示答案

答:一个


8)按照正确的顺序安排以下句子。

  • 在今年剩余的时间里
  • 买其他东西
  • 如果我们用完钱
  • 我认为
  • 我们将无法

正确的选项将是

  1. 43521
  2. 45321
  3. 31542
  4. 35421

显示答案

答:一个


9)Priya笑得很厉害_______ Ravi的笑话使她_______跌倒在椅子上________在地板上。

  1. 在…上
  2. 在, 关闭, 在
  3. 通过, 基于

显示答案

答案:b


10)IAS考试的成功仅取决于…..的努力。

  1. At
  2. 过度
  3. 对于
  4. On

显示答案

答案:d


能力问题


1)如果30的35%= X的25%+ 1, 则求X的值。

  1. 38
  2. 28
  3. 42
  4. 32

显示答案

答:一个

说明:

30的35%= X + 1的25%

35 * 30/100 = 25 * X / 100 + 1

105/10 = X / 4 +1

X = 38


2)湿婆花了3000卢比购买了40件衬衫。他在交通上花费了10%。要获得20%的利润, 每件衬衫的售价应该是多少?

  1. 100
  2. 80
  3. 99
  4. 110

显示答案

答案:c

说明:

包括运输在内的40件衬衫的总成本价= 3000+(3000 * 10)/ 100 = 3300

给定利润= 20%

因此, 销售价格=(100 + 20)* 3300/100

标配40件衬衫= 3960

所以S.P.的1衬衫= 3960/40 = Rs.99


3)如果一个人以通常速度的5/6行驶, 则要迟到15分钟。通常旅行时间是几点?

  1. 60分钟
  2. 40分钟
  3. 75分钟
  4. 30分钟

显示答案

答案:c

说明:

假设人的惯常速度= s, 惯常时间= t

所以距离=速度*时间==> d = s * t

如果他以通常速度的5/6行驶= s * 5/6

并且时间=(t + 15)和距离d =(s * 5/6)*(t + 15){因为距离将是相同的}

s * t =(s * 5/6)*(t + 15)

t =(5t + 75)/ 6

t = 75分钟。


4)如果Ram父亲的当前年龄是Ram年龄的三倍。然后10年之后, 父亲的年龄将是Ram年龄的2倍。拉姆当前年龄是—–

  1. 10年
  2. 15年
  3. 22年
  4. 18年

显示答案

答:一个

说明:

假设当前的Ram = x, 父亲的当前= 3x

10年后, Ram年龄= x + 10, 父亲的年龄= 3x + 10

根据条件:

3x + 10 = 2 *(x + 10)

3x + 10 = 2x + 20

X = 10年


5)一家旅馆的5个女孩的平均年龄是11岁。其中年龄最大的女孩是15岁。其他女孩的平均年龄是多少?

  1. 12年
  2. 9年
  3. 10年
  4. 以上都不是

显示答案

答案:c

说明:

根据问题, 五个女孩的平均年龄为15岁, 令X为女孩的总年龄

X / 5 = 11

X = 55

年龄最大的女孩+剩余的4个女孩年龄= 55

剩下的4个女孩年龄= 55-15 ==> 40

4个女孩的平均年龄= 40/4 = 10岁。


6)一张床的成本价是Rs.2400, 如果它以市场价的16%的折扣出售, 那么它比市场价低20%, 那么它的市场价, 售价和利润是多少?

  1. Rs.3000, Rs.2520、5%
  2. 4000卢比, 3520卢比, 6%
  3. 5000卢比, 6250卢比, 7%
  4. 以上都不是

显示答案

答:一个

说明:

床的价格价格= 2400卢比

取床的市场价格= X

作为问题

C.P =(X-20X)/ 100

C.P = 80 * X / 100-> 2400 = 8 * X / 10

X =卢比3000。

-> S.P = 3000? (16 * 3000)/ 100

售价= 2520

->利润= 2520-2400 ==> 120卢比。

%利润= 120 * 100/2400 = 5%


7)世界字母” LEADING”的排列方式有多少种, 使元音总是在一起?

  1. 350
  2. 720
  3. 480
  4. 5040

显示答案

答案:b

说明:

主词可以写为” L”, ” E”, ” A”, ” D”, ” I”, ” N”, ” G”

将元音放在一起= E A I, 因此可以将元音排列为=!3种方式, 并使元音成为一个单位X

所以X L D N G, 它可以按=!5种方式排列

因此完整的单词可以写成=!3 *! 5 = 720路


8)如果一年的第一天是星期一。如果不是a年, 那么今年的最后一天是几月。

  1. 星期日
  2. 星期二
  3. 星期六
  4. 星期一

显示答案

答案:d

说明:

由于年份不是leap年, 因此奇数日将为1天

因此, 明年的第一天将是=(星期一+奇数日)=>星期二

所以那年的最后一天=星期一


9)A和B可以在30天内共同完成工作。两者都工作了20天, 然后B离开了工作。剩下的工作仅由A一家人在20天内完成。因此, 仅B一天就能完成全部工作。

  1. 50天
  2. 60天
  3. 48天
  4. 54天

显示答案

答案:b

说明:

(A + B)的1天工作时间, 一起工作= 1/30

(A + B)的20天工作时间= 20/30 ==> 2/3

剩余功=(1-2 / 3)===> 1/3

剩下的工作由A多完成了20天= 1/3

因此, A可以在= 20 * 3 === >> 60天之内完成整个工作

因此, A的1天工作, 单独工作= 1/60

B的1天工作, 独自工作= 1 / 30-1 / 60 ====== 1/60

因此, B将需要60天才能完成整个单词。


10)找出(483 * 483 * 483 + 517 * 517 * 517)/(517 * 517-517 * 483 + 483 * 483)的值

  1. 1000
  2. 23.4568
  3. 5436948
  4. 1

显示答案

答:一个

说明:

(483 * 483 * 483 + 517 * 517 * 517)/(517 * 517-517 * 483 + 483 * 483)a3 + b3 =(a + b)(a2-ab + b2)因此[[a + b) (a2-ab + b2)] /(a2-ab + b2)= a + b在给定的方程式中, a = 483和b = 517 ==> 483 + 517 = 1000。


推理问题


1)如果单词TEACHING被编码为CHEATING, 那么如何将单词GRADIENT编码?

  1. 光芒四射
  2. 递减
  3. RGDIEANT
  4. 董事

显示答案

答案:d

说明:

T E A C H I N G等同于单词C H E A T I N G, 因此这些单词被替换为以下内容

1个字母替换为5个字母

2个字母替换为3个字母

3个字母替换为4个字母

4个字母替换为1个字母

5个字母替换为2个字母, 最后3个字母相同

因此, 我们可以将G R A D I A N T编码为D I R A G E N T


2)在成排的女孩中, Neha和Ruchi之间有16个女孩。内哈(Neha)是该行左端的第二十三个女孩。如果Neha比Ruchi更靠近该行的右端, 那么Ruchi离该行的左端有多远?

  1. 16号
  2. 15
  3. 14日
  4. 以上都不是

显示答案

答案:b

说明:

根据1条陈述:

Neha ——————– 16个女孩———————- Ruchi

根据2陈述:

左端——————————- Neha(32nd)

根据第三条声明:

左端——- Ruchi ———— 16个女孩————– —— Neha ———-右端

=======>第32

因此, Ruchi位置从左边= 32-(16 + 1)=第15个位置


3)声明

一, 没有红宝石是珍珠

二。有些珍珠是钻石

结论

一, 没有红宝石是钻石

二。有些钻石是珍珠

  1. 我得出的唯一结论
  2. 仅得出结论II
  3. 结论I和II都遵循
  4. 既不得出结论I也不得出结论II

显示答案

答案:b


4)如果BLACK像RED -81一样被编码为145,

GREY-204, 然后将GREEN编码为

  1. 540
  2. 385
  3. 400
  4. 245

显示答案

答案:d

说明:

将A = 1, B = 2, C = 3 … Z = 26的值

黑色=(2 + 12 + 1 + 3 + 11)*字母数量= 29 *字母数量= 29 * 5 ====> 145

红色=(18 + 5 + 4)*字母数量= 27 * 3 = 81

灰色=(7 + 18 + 1 + 25)*字母数量= 51 * 4 = 204

因此, GREEN =(7 + 18 + 5 + 5 + 14)= 49 * 5 = 245 ANS。


5)声明

一, 有些塑料是碗

二。一些碗是盘子

三, 有些盘子是花

结论

一, 有些花是塑料的。

二。有些花是碗

三, 没有塑料是花。

  1. 没有跟随
  2. 只有我跟随
  3. 只有II
  4. 只有I或III跟随
  5. 只有III

显示答案

答案:d

说明:

iGATE面试题

如同所有结论一样, 没有给出直接关系, 因此将给出答案。)仅跟随I或III


6)阿贾伊指着相册中的一个女孩说:”她是我父亲儿子的女儿。阿贾伊与她有什么关系?

  1. 哥哥
  2. 表姐
  3. 父亲
  4. 叔叔

显示答案

答案:d

说明:

我父亲的儿子=阿杰的兄弟(因为他没有提到独生子)

我父亲儿子的女儿=我兄弟的女儿, 因此阿杰(Ajay)是那个女孩的叔叔


7)以下哪个陈述对回答这个问题是必要的

问:拉姆要花多长时间完成工作?

陈述1:Ram和Mohan一起工​​作, 需要30天才能完成工作

声明2:Ram, Shyam和Mohan共同努力, 并在20天内完成工作

陈述3:Mohan的效率是Shyam的两倍

  1. 所有三个陈述
  2. 陈述1和3
  3. 陈述2和3
  4. 陈述1和2

显示答案

答:一个

(Ram + Mohan)的1天工作= 1/30

(Ram + Mohan + Shyam)的1天工作= 1/20

Shyam的1天工作量= 1 / 20- 1/30 = 1/60

要找到Ram的总日, 我们还需要3条语句-

Mohan:Shyam效率比= 1:2

Mohan的总工作天数= 2 * 60 = 120

拉姆的总天数= 40天

因此, 必须使用所有三个语句来回答给定的问题


8)找到最适合PAIN:SEDATIVE的类比

  1. 舒适度:刺激
  2. 悲伤:安慰
  3. ::麻醉
  4. 疼痛:提取

显示答案

答案:b


第二轮:技术面试


将通过第一轮考试的候选人将被选入下一轮的候选人名单, 即技术面试回合, 其中将对候选人的技术技能进行检查。这次面试包括基于C / C ++, JAVA等不同技术的问题。没有具体的时间限制, 它完全取决于候选人的知识。在IGATE招聘过程中, 列出了一些最常见的技术面试问题, 并给出了最合适的答案。

1)区分低级语言和高级语言?

计算机无法理解人类的语言, 因此我们需要使用另一种语言与计算机进行通信。计算机可以理解并相应地使用多种类型的语言, 因此, 有两种类型的语言:

低级语言和高级语言。

两种语言之间的主要区别如下:

低级语言 高级语言
高级语言是与机器无关的语言, 这意味着我们可以在任何平台(Mac, Windows和Linux)上执行它。
高级语言更易于阅读。
与低级语言相比, 易于编写和编译高级语言
使用高级语言可以轻松找到错误并进行调试。
高级语言以某种人类可读的指令编写, 需要转换为二进制形式, 因此比
低级语言高级语言的示例是C ++, Java等。

2)用Java语言解释一个接口?

Java接口是实现抽象的一种方法。接口就像一个类, 也可以像类一样具有方法和变量, 但是接口仅包含方法签名, 没有主体。

  • 接口无法在Java中实例化
  • 接口包含公开和抽象的方法(默认情况下)。
  • 一个类可以实现一个接口。
  • 为了声明接口, 我们使用关键字interface。

语法

Interface Interface_Name{
//Methods
}

3)我们如何用Java创建接口?

要使用Java创建接口, 我们可以使用关键字” interface”, 后跟接口名称。

例子

interface Employee { 
int empid = 23;
String empname="John";
}

我们可以使用关键字” implement”在类中实现接口, 并可以使用抽象方法。


4)什么是不可变类, 以及如何在Java中创建不可变类?

不可变类是一种一旦创建对象便无法更改值或更改其内容的类。与Java中一样, 我们有包装器类, 例如String, Boolean, Integer等, 所有这些类都是不可变的类, 我们也可以自己创建一个不可变的类。

以下是在Java中创建不可变类的一些要求:

  • 一个类需要声明为final, 以便不能被继承。
  • 该类的所有数据成员都需要声明为final, 因此其值无法更改。
  • setter方法没有选项。
  • 所有变量都应该有getter方法。

5)”字符串类是不可变的”, 解释原因?

字符串类在Java中是不可变的, 这意味着我们无法更改其值。这是因为String对象始终缓存在String池中, 并且这些池可以在各种客户端之间共享。因此, 总是存在这样的风险, 如果我们更改客户的字符串, 它将自动影响客户的所有操作。因此, 每次我们尝试更改String值时, 它都会创建一个新对象


6)如何在Java中的类中继承构造函数?

我们不能在类中继承构造函数。如果我们尝试将父类的构造函数继承给子类, 则将产生编译时错误, 因为构造函数名称应与类名称相同, 并且构造函数的继承违反了Constructor的约束。

例:

class ConstructInheritance{
    
    ConstructInheritance()
    {
    System.out.println("This is Parent class Constructor");
    }
}

class Child extends ConstructInheritance{
 
     Child()
     {
    System.out.println("This is Child  class Constructor"); 
}       
   public static void main (String[] args) {
    Child obj= new Child();
    Child obj2=new ConstructInheritance();
}  }

输出

Error message:
prog.java:10: error: invalid method declaration; return type required
   ConstructInheritance(){

注意:尽管我们可以在子类中使用super()方法在子类中调用父类构造函数


7)Java中的static关键字是什么?它的意义是什么?

Java中的static关键字主要可用于内存组织。 Java类中的静态成员始终属于其类, 而不是实例。静态关键字可用于:

  • 积木
  • 变数
  • 方法
  • 嵌套类

要创建静态成员, 我们需要将其声明为静态成员。静态成员的实例仅创建一次, 并且在所有对象之间共享。静态成员可以在其对象创建之前访问。

class Employee   {
    
  static int i;             //static variable
    
    static void m1()     //Static method
    {
     System.out.println("This is static mehtod ");   
    }
    
    static                         //static block
    {
        for(i=1; i<=5; i++){
  
        System.out.println("the value of i in static block=" +i);}
    }
   public static void main (String[] args) {
    m1();
    }
}

输出

the value of i in static block=1
the value of i in static block=2
the value of i in static block=3
the value of i in static block=4
the value of i in static block=5
This is static mehtod

8)你对JAVA中的封装, 继承和抽象有什么了解?

术语封装, 继承和抽象是面向对象编程的功能。这些功能提供了处理对象的便利。

封装:封装是OOP概念的主要特征之一。将数据和方法绑定到一个单元中的过程称为封装。

借助封装, 我们可以从其他类中隐藏数据成员, 并且只能由其当前类访问。

有两种方法可以实现封装:

  • 将类变量修改为私有。
  • 使用公共的Setter和getter方法设置和获取值。

继承:-Java中的继承是一个过程, 通过该过程, 类可以继承另一个类的属性(方法和字段)。它提高了方法和字段的可重用性。我们可以使用继承的方法, 也可以添加新的方法。继承显示父子关系, 也称为IS-A关系。

继承中使用了以下术语:

子类/子类:子类或子类是继承另一类的子类。

父类/父类:父类或父类被另一个类继承。它也被称为基类。为了继承一个类, 将另一个类继承到Java中。

继承的语法:

class A extends B 
{  
   //methods and fields  
}

其中A类是子类, B类是父类。

抽象:抽象是OOPs概念的重要特征之一, 它可以帮助用户仅显示功能而不显示对象的实现细节。在Java语言中, 我们可以通过两种方式实现抽象:

  • 通过使用抽象类(0到100%):使用’abstract’关键字声明的类被视为抽象类。抽象类可以具有抽象方法以及非抽象方法。

语法

abstract class A{  }
  • 通过使用接口(100%):Java中的接口与Java中的类相同, 它可以具有抽象方法和变量。但是它不能具有方法主体。我们可以使用interface关键字来声明它

语法

Interface Interface_Name{
//Methods    }

9)什么是规范化?解释其类型?

规范化是一种有效的数据库设计和组织技术, 可以满足两个基本要求:

  1. 数据的最小冗余
  2. 逻辑数据完整性。

标准化可提高数据库的性能, 因为它允许数据库占用很少的内存空间。

主要有四种归一化类型, 分别为:

IGATE面试问题
  • 1NF:如果每个属性都是单值属性, 则表中的关系采用第一范式
  • 2NF:
  • 3NF
  • BCNF

10)我们可以检查链接列表是否循环吗?

是的, 我们可以检查给定的链接列表是否为循环列表。如果遵循以下两个主要要求, 则链接列表将是循环链接列表:

  1. 如果链接列表不为空终止(指向第一个节点)
  2. 如果所有节点都以循环的形式连接。

11)itoa()在C中起什么作用?

C语言中的itoa()函数用于将整数值转换为其等效的以null终止的String。它将结果存储在数组中。

语法

char *  itoa ( int value, char * str, int base );

参数:

值:需要转换的值

str:将转换后的值存储为数组的参数

base:代表数值, 用于给出转换基础, 以二进制为基数2, 以十进制为基数10。


12)如何确定班级规模?

类的大小取决于其成员的大小。有以下因素决定了课程的大小:

  • 所有非静态成员的人数
  • 其直接父类的大小(如果有)

13)通过汇总你了解什么?与协会有何不同?

在UML(统一建模语言)中, 面向对象的系统具有各种类型的关系。关联和聚合也是UML中的一种关系。

聚合:聚合是两个或多个对象之间的特定关联类型。在聚合中, 对象可以拥有所有权的生命周期。这是一种单向关联。如果我们销毁一个物体, 它将不会影响另一个物体。也称为HAS-A关系。

关联:关联是两个对象之间的关系, 这些对象具有自己的生命周期且没有任何所有权。关联关系可以用以下类型表示:

  • 一对一
  • 一对多
  • 多对多

聚集和组成是关联的一部分。


14)区分构造函数和析构函数吗?(C ++)

构造函数和析构函数之间的区别如下:

CONSTRUCTOR DESTRUCTOR
析构函数用于销毁先前创建的类的对象
析构函数名称也与类名称相同, 没有任何返回类型, 但带有〜(波浪号)前缀。
析构函数不允许重载(只能在一个类中指定一次)。
语法:class EmployeeDestr {                          〜EmployeeDestr(){}                                             };
销毁程序在销毁对象时释放内存。

15)你对预处理器了解什么? C中的头文件有哪些不同类型?

C预处理程序用于在编译源代码之前对其进行扫描和修改。在源代码中, 以符号#开头, 其后为指令名称的行被称为预处理器指令。编译器调用预处理器指令, 以在编译过程之前处理一些代码。

  1. 代码中的每一行可以有一个预处理器指令
  2. 预处理程序指令的末尾不包含分号。

头文件是包含宏定义和函数定义的文件。它与文件扩展名为” .h”的预处理器指令一起使用。 C中的头文件有两种类型:

  • 系统头文件:这些头文件与编译器一起提供
  • 用户创建的头文件:这些文件由程序员编写。

以下是C语言中一些主要使用的头文件

  • #include <stdio.h>
  • 的#include <CONIO.H>
  • #include <stdlib.h>
  • #include <string.h>
  • #include <math.h>等。

16)什么是DBMS软件包?

Oracle提供了一些内置的DBMS软件包。借助Oracle DBMS软件包, 我们可以创建各种Oracle应用程序。

以下是Oracle提供的一些基本软件包:

  • Oracle dbms_alert
  • Oracle dbms_application_info
  • 甲骨文dbms_aqadm
  • Oracle dbms_crypto
  • 甲骨文dbms_fga
  • Oracle dbms_job
  • Oracle dbms_job.submit
  • 甲骨文dbms_lob
  • Oracle dbms_metadata
  • Oracle dbms_monitor

17)区分编译器和解释器?

计算机只能理解以二进制形式编写的代码, 即以0和1的形式编写的代码。因此, 与计算机通信时, 我们需要将代码(源代码)转换为机器代码。编译器和解释器都是将程序语言从源代码转换为机器代码的计算机程序。两种翻译器之间的主要区别如下:

Compiler Interpreter
解释器是一个软件程序, 用于直接执行以高级编程语言编写的源代码
它不会创建任何中间代码。
解释器一次一行一行地转换源代码。
由于解释器逐行转换源代码, 因此与编译器相比, 它们的速度较慢。
查找错误很容易。
用于Java, PHP, Perl, Python等语言。

18)使用数据结构中的堆栈和队列可以执行哪种类型的操作?

可以借助数据结构来完成计算机中数据的组织, 以便可以轻松有效地访问数据。计算机中使用了不同类型的数据结构, 其中两个是堆栈和队列数据结构。

堆栈:堆栈是一种线性数据结构, 它以堆栈的形式在逻辑上表示和排列数据。堆叠的真实示例是”以堆叠形式排列的板”。在堆栈结构中, 只能从一端对数据项执行任何操作。

堆栈结构遵循对数据项进行操作的特定顺序, 该顺序可以是LIFO(后进先出)或FILO(后进先出)。堆栈可以以数组的形式表示。

在堆栈上执行的操作类型:

1.推入:推入是可以执行的用于在堆栈中添加元素的操作。

IGATE面试问题

如上图所示, 顶部元素为93(在添加新元素之前), 执行PUSH操作后, 顶部元素为10。现在指针将指向堆栈的顶部。

2. Pop:如果我们尝试从堆栈中删除或删除元素, 则称为Pop操作。

IGATE面试问题

如上图所示, 如果我们想从堆栈顶部删除一个元素, 则可以通过Pop操作来完成。

3. isEmpty:如果我们要检查堆栈是否为空, 则可以执行isEmpty操作。它将返回三个值:如果我们将对空Stack执行Pop操作, 则称为下溢条件。

IGATE面试问题
-1
0
N-1
N

4. Peek或Top:如果我们执行Peek操作, 它将检查堆栈中的所有元素并返回top元素。

队列:队列是与堆栈相同的数据元素的有序集合, 但是它允许从一端称为REAR端的插入操作和从另一端称为FRONT端的删除操作。

队列结构遵循FIFO(先进先出)的顺序, 用于插入和删除数据元素。

现实生活中的队列示例是排队等待购买电影票的人们。

IGATE面试问题

在堆栈上执行的操作类型:可以执行的两个主要操作

在堆栈上有入队和出队。

入队:

执行此操作以在后端的队列中添加元素。在队列中添加元素后, 后方指针的计数增加1。以下是使用Enqueue操作的队列的Array表示形式。

IGATE面试问题
IGATE面试问题

出队:

执行此操作以从前端的队列中删除元素。从队列中删除元素后, Front指针的计数减1。下图显示了从队列中删除数据元素。

IGATE面试问题

在队列上执行的其他操作是:

窥视:此操作用于在不删除元素的情况下获取队列中的所有数据元素。

Isfull:执行此操作以检查队列是否已满。

Isempty:执行此操作以检查队列是否为空。


19)fprintf和fscanf的用途是什么?

函数fprintf():在C语言中, 该函数用于将字符, 整数和字符串值写入单个文件。

语法

int fprintf(FILE *stream, const char *format, ...) ;	

           Where stream= file pointer of datatype "FILE".
	Format can %d, %s, %f, etc.

例:

#include <stdio.h>
#include <stdlib.h>

int main () {
   FILE * fp;    //file pointer

   fp = fopen ("file.txt", "w");   Opening file 
   fprintf(fp, "%d %s %s %s", 12, "rollno", "student", "present");  //writing data of different format 
   
   fclose(fp);     //file closing
   
   return(0);   }

输出

12 rollno student present

函数fscanf():在C语言中, fscanf()函数用于从文件中读取字符集或混合数据。

int fscanf(FILE *stream, const char *format, ....);	
Where stream= file pointer of datatype "FILE". 
Format can %d, %s, %f, etc.

20)什么是链表?解释其应用?

  • 链表是类似于数组的线性数据结构, 用于以有组织的方式存储数据。
  • 在链接列表中, 数据元素未存储在连续块中。
IGATE面试问题

链接列表的应用:

  • 链表可用于堆栈和队列的实现。
  • 可以使用链接列表来实现图形
  • 链表可用于动态内存分配
  • 链表可用于实现图形
  • 它可用于对长整数执行算术运算。
  • 音乐播放器可以使用链接列表来播放歌曲。

21)与C相比, C ++有何优势?

C和C ++都是计算机编程语言。两种语言都使我们能够编写高效的代码。由于C ++是C语言的高级版本, 因此它比C语言具有一些额外的功能。与C语言相比, C ++的主要优点如下:

  • 由于C ++是一种面向对象的语言, 因此支持函数重载, 而C语言不支持函数重载。
  • C ++提供了数据隐藏的属性, 而C没有提供此功能
  • C ++支持异常处理, 而C不支持异常处理概念
  • C ++提供了类和对象的概念, 其中C语言没有这样的概念。

22)Java API中最小的软件包是哪个?

Java API中最小的软件包是java。小程序包。

23)什么是搜索技术?解释线性搜索?

搜索是在给定列表中查找数据元素的值或位置的过程。如果找到了数据元素, 则搜索技术将成功, 否则将失败。主要有两种类型的标准搜索技术, 分别是:

  • 线性搜索或顺序搜索
  • 二元搜寻

线性搜索:线性搜索技术是搜索元素的最简单方法。我们可以在已排序和未排序列表(通常是数组列表)中执行线性搜索操作。为了理解线性搜索, 让我们以8个元素的数组列表为例

例:

Input:  a [ ] = {10, 140, 589, 20, 89, 78, 90, 110}
     x= 90;
 Output: 6.
IGATE面试问题

线性搜索的基本算法:

  • 步骤1:遍历数组列表。
  • 步骤2:将键元素与数组中存在的所有元素匹配
  • 步骤3:如果找到关键元素, 则返回元素在数组列表中的索引位置
  • 步骤4:如果找不到关键元素, 则返回-1

使用Java程序实现线性搜索:

public class LinearSearchExample
{    
public static int linearSearch(int[] arr, int key)
{    
        for(int i=0;i<arr.length;i++)
{    
            if(arr[i] == key){    
                return i;    
            }    
        }    
        return -1;    
    }    
    public static void main(String a[])
{    
        int[] a1= {10, 140, 589, 20, 89, 78, 90, 110};    
        int key = 90;    
        System.out.println(key+" is found at index: "+linearSearch(a1, key));    
    }    
}

输出

90 is found at index: 6

退税:

  • 在线性搜索中, 我们需要遍历完整列表
  • 搜索速度慢

为了克服这些缺点, 我们可以实现二进制搜索。


24)编写一个程序以交换两个给定的字符串而不使用任何第三变量?

以下是不使用Java中的第三个变量即可交换两个字符串的程序

public class Swap {  
    public static void main(String args[]) {  
        String a = "Hello";  
        String b = "world";  
        System.out.println("Before swap: " + a + " " + b);  
       a=a+b;
        b = a.substring(0, a.length() - b.length());  
        a = a.substring(b.length());  
        System.out.println("After swap: " + a + " " + b);  
    }  }

输出

Before swap: Hello world
After swap: world Hello

25)什么是数据库系统中的数据抽象?

数据抽象:

数据抽象是一种向用户隐藏不相关的内部数据细节的技术。它使用户与数据库的交互更加容易。该技术创建了一种更简单的数据库设计方式。

数据抽象分为三个级别:

1.身体水平

  • 物理级别是数据抽象的基础级别
  • 它提供有关数据如何实际存储在数据库中的信息
  • 向开发人员提供有关内存大小, 要求和记录访问频率的信息。
  • 该级别使用组织方法, 例如哈希, 顺序, B +树等。

2.逻辑层次

  • 逻辑级别是数据抽象的中间级别
  • 它描述了以表的形式存储什么类型的数据。
  • 它还在映射的帮助下关联了数据和表。
  • 任何类型的更改都不会影响其他级别

3.视图级别

  • 视图级别是数据抽象的最高级别。
  • 在此级别上, 用户可以查看实际数据库的一部分
  • 用户可以以行和列的形式查看数据。
  • 在此级别, 用户可以更轻松地与数据库进行交互
  • 用户可以在同一数据库的各种视图中查看数据。

26)编写程序来查找数字的阶乘?

以下是在Java中使用递归的阶乘数程序。

public class Factoria{  

 static int display(int n){    
  if (n == 0)    
    return 1;    
  else    
    return(n * display(n-1));    
 }    
 public static void main(String args[]){  
  int i, fact=1;  
  int number=5;//It is the number to calculate factorial    
  fact = display(number);   
  System.out.println("Factorial of "+number+" is: "+fact);    
 }  
}

输出

Factorial of 5 is: 120

27)解释守护线程?

  • 守护程序线程是JVM的低优先级线程。哪个作为用户线程的服务提供者。
  • 守护程序线程是后台程序, 执行诸如垃圾回收之类的任务。
  • 如果所有用户线程均已完成执行, 则守护程序线程无法阻止JVM退出。
  • 如果程序只有守护程序线程并且正在执行, 则它将终止线程并自行关闭。
  • 守护程序线程的生存期完全取决于用户线程。

守护程序线程的方法:

  1. public void setDaemon(boolean status):此方法将当前线程设置为用户线程或守护程序线程。
  2. 布尔值isDaemon():此方法检查当前线程是否是守护程序。它返回true或false布尔值。

28)你对SQL中的外键了解什么?

外键是表中的字段, 用于在两个表之间创建链接。它在一个表中定义, 但引用另一个表的主键。包含外键的表称为子表。并且, 将包含候选关键字的表称为父表。

外键的一些要点:

  • 外键的值可以为NULL。
  • 对于主键的所有等效值, 应存在外键的所有值。

29)通过序列化你了解什么?

  • Java中的序列化是将对象的状态转换为字节流的过程, 该字节流可以通过网络发送, 也可以另存为文件。
  • 反向过程称为反序列化, 这意味着将字节流转换为对象。
  • 进程中的字节流是平台无关的或JVM无关的。
  • 我们可以使用java.io.Serializable接口创建可序列化的对象。该接口是标记接口, 不包含任何数据成员或方法。
  • 这两个类ObjectInputStream和ObjectOutputStream在Java中实现序列化。

30)区分ArrayList和LinkedList吗?

ArrayList和LinkedList之间的基本区别如下:

ArrayList LinkedList
LinkedList实现双向链接列表以存储元素
与ArrayList相比, 插入新元素很容易
删除数据元素很容易
LinkedList在处理数据元素时速度很快。
List <Type> al2 = new LinkedList <Type>(); //创建LinkedList

31)为什么我们在Java中使用垃圾回收?

每当我们创建对象时, 它都会占用内存中的一些空间。一旦完成任务, 我们需要删除该对象以释放内存, 以便其他对象可以使用它。为此, 我们在Java中使用了垃圾回收。

  • Java中的垃圾回收是用于自动内存管理的过程。
  • 它从内存的堆区域中销毁或删除未使用的对象。
  • 我们不使用Java中的任何显式方法或函数来进行垃圾回收, 因为它是由JVM自动执行的。

32)区分静态变量和非静态变量?

在Java语言中, 我们可以使用两种类型的变量:静态变量和非静态变量。这两个变量之间的主要区别如下:

Static Variable 非静态变量(实例变量)
要指定一个非静态变量, 我们不需要使用任何关键字, 我们可以简单地给一个变量名
非静态变量属于该类的实例。
每当我们创建新对象时, 都会将内存分配给非静态变量。
我们可以使用对象引用访问非静态变量
非静态变量可用于单个实例。

33)解释C ++中的范围解析运算符吗?

C ++中的范围解析运算符用于以下目的:

  • 在类外定义函数或变量。
  • 如果我们想使用一个全局变量, 它也用作同名的局部变量。
  • 如果我们要访问一个类的静态变量。

范围解析运算符的符号是::在C ++中使用。

#include <iostream>
 
using namespace std;
 
int x = 5;     // global variable

int main() {
  int x= 10;   //local variable
 
 cout << "Local  variable: " << x << "\n";      
 cout << "Global variable: " << ::x << "\n";  //using scope resolution operator
 
  return 0;
}

输出

Local variable: 10
	Global variable: 5

34)对象和类之间有什么区别?

类和对象是OOP概念的主要特征。对象和类之间的主要区别如下:

Object Class
类是逻辑实体。
类是对象的模板。
可以使用class关键字创建一个类。
类创建时不占用任何内存。
一个类只能创建一次。

35)你对.Net框架中的值类型和引用类型有什么了解?

在.NET框架中, 类型是值类型还是引用类型, 具体取决于它们存储值的方式。

1.值类型:如果数据类型将值存储到其自己的内存空间中, 则称为值类型。在值类型中, 我们可以直接将值提供给变量。诸如int, char, float, double, enum, struct等数据类型均为值类型。

IGATE面试问题

2.引用类型:引用类型不直接将值存储在变量中。它存储指向另一个存储位置的指针, 该存储位置存储数据。由于引用类型存储的是数据的地址, 而不是实际数据, 因此, 如果我们更改地址, 它将为引用创建另一个副本, 该副本将指向相同的数据。示例是对象, 数组, 类, 接口等。

IGATE面试问题

36)区别图和树?

树和图都是非线性数据结构, 由节点和边组成。树和图之间的主要区别如下:

Graph Tree
在树中, 两个节点之间仅允许一条路径。
它包含一个根节点
一棵树代表一个层次结构。
在树中, 边数应为n-1(其中n =节点数)

37)解释抽象类和接口之间的区别吗?

接口和Abstract类都是在Java中实现抽象的方法。但是两种方式之间存在一些差异:

Interface 抽象类
抽象类可以具有抽象和非抽象两种方法类型,
对于抽象类的声明, 我们使用”抽象”关键字。
抽象类不支持多重继承。
可以使用关键字”扩展”在其他类中使用抽象类。
在抽象类中, 我们可以使用不同类型的修饰符, 例如public, private, protected以及abstract。

第三回合:人力资源面试。


人力资源回合是招聘过程的最后一轮。这也是最关键的一轮, 因为你将要代表个人和专业水平。在这一轮中, 问题将基于你的简历, 工作简介, 关于公司, 关于你自己等的信息。HR轮次主要是检查你的信心和沟通技巧。因此, 这里有一些最合适的答案的HR问题, 它们将使你完全准备好接受这次面试。

1)在一分钟内简要介绍一下你自己?

这个问题将是人力资源回合的第一个最主要的问题, 面试官希望通过它来流利地检查你的信心水平, 以及你对自己的解释能力如何。要回答这个问题, 这里有一些基本提示:

  • 告诉面试官你的简短介绍。
  • 告诉你的学者。
  • 谈谈你的技能, 力量和爱好。
  • 讲述你的目标。

例:

嗨, 你好先生, 我叫Riya, 我来自昌迪加尔(Chandigarh), 我从昌迪加尔大学获得了电子和通信专业的B.Tech学位, 总计75%。我精通Java和C / C ++。我完成了基于人工智能技术的学术项目。如果我谈论自己的爱好, 那么我会非常热衷于写诗和新思想。我的力量就是我的信心。这样, 我可以应付任何情况。我的人生目标是成为信息技术领域的知名品牌。谢谢!


2)你是否有过任何经验?

这是一个问题, 招聘经理希望对你的工作经历有更好的了解。要回答这个问题将取决于你是否有过任何经验。

如果有经验:

是的, 我确实在ABC Company担任软件测试员有1年的经验。在此职位上, 我负责测试软件并生成最佳输出。在这一年的经验中, 我学到了许多软件测试方面的知识, 并被授予公司最敬业的员工奖。

如果你较新:

目前, 我没有任何经验, 因为我刚刚毕业并正在寻找机会。


3)如果你可以选择在金钱和职业之间进行选择, 你会更喜欢什么?

这是招聘经理在决策中检查你对金钱偏好的问题。因此, 回答这个问题有些棘手, 因为金钱和职业都有其重要性。这是一个示例, 说明如何回答此类问题。

例:

是的, 金钱对我很重要, 因为它有助于满足我的个人生活需求。但另一方面, 职业对我来说也更重要, 这将为我提供成功, 并为成长之路和各种机会打开大门。


4)你的人生灵感来自谁?为什么?

例:

我一生的灵感来自我父亲, 就我而言, 他是一个超级英雄, 可以在任何情况下站得住脚, 可以毫无畏惧地与之抗争。他的动力, 领导才能, 奉献精神以及其他许多方面都给我很大的启发。他一生中遇到许多糟糕的情况, 但从未放弃, 始终保持幸福。我想像我父亲一样。


5)你的职业短期和长期目标是什么?

这是面试中最常见的问题。通过这个问题, 面试官会评估你的兴趣并检查与该组织有关的你的职业定位。要回答此问题, 请确保你的长期目标和短期目标应相互关联。

例:

我的短期目标是实际学习技术, 而长期的目标是成为这个成熟组织的最佳员工。


6)你最大的优点和缺点是什么?

通过回答这个问题, 你应该告诉自己可以使自己与他人不同的实际能力, 并尝试将其与你的工作概况联系起来。要回答关于软弱的问题, 你不应该告诉自己负面的事情, 因为我很快就累了。它可能会造成严重影响。

例:

我最大的优点是我非常自信, 这使我能够应对任何类型的情况, 而我的弱点是有时我会非常情绪化。


7)介绍一下我们公司吗?

通过这个问题, 面试官想检查你是否了解公司。因此, 在进行面试之前, 你应该了解公司简介, 公司服务和产品等。


8)你准备好搬迁到其他位置了吗?

通过回答这个问题, 候选人不应该问公司是否会为此付费, 或者永远不要以否定的方式回答。

例:

我很乐意为自己的职业发展找到一个绝佳的机会, 而且我相信这家公司就是这样的机会。


9)你还申请过其他工作吗?

通过这个问题, 面试官想知道你从事面试的程度以及对工作的重视程度。如果你有其他优惠, 这个问题的答案应该简短, 不要过于自信。

示例:如果有机会

是的, 尽管我有两家公司的工作机会, 但我很想与这个组织合作, 因为这是我的理想公司。

示例:如果尚未申请

目前, 我尚未申请其他职位, 但我准备申请该领域的另一份工作。


10)与团队合作时有什么问题吗?

这个问题的答案绝不能以否定的方式回答, 因为在每个组织中, 可能会有很多项目需要员工团队合作。

例:

因为我是团队合作者, 所以我很乐意与团队合作。这将为我提供良好的工作环境。


11)你想问我任何问题吗?

通常在面试结束时问这个问题, 否则可能是最后一个问题。通过这个问题, 面试官可以给你一个提问的机会, 如果你对工作概况, 成长道路等有任何疑问。通过提出一个好的问题, 候选人可以给人留下良好的印象, 这可以帮助他进一步发展。脚步。


12)你认识已经与我们合作的人吗?

这个问题也是一个棘手的问题, 采访者想借此了解你与已经在公司工作的人的关系。因此, 在回答此问题之前, 你应该阅读以下提示:

  • 首先检查公司政策, 对亲戚或血缘关系是否有任何限制。
  • 如果你认识的人在公司中享有很高的声誉, 那么取他的名字将是很好的
  • 如果你知道此人的印象很差, 请避免使用名字, 或者如果想使用名字, 请以积极的态度认真回答

低级语言是与机器相关的语言, 这意味着我们无法在其他平台上执行它。

低级语言更加机器可读。

很难编写和编译低级语言。

用低级语言很难找到错误并调试程序。

低级语言以二进制形式编写, 因此它们比其他语言快。

底层语言的示例是机器语言。

构造函数用于初始化该类的对象

构造函数名称始终与类名称相同, 没有任何返回类型。

构造函数重载可能在一个类中

语法

class EmployeeCons{
                   EmployeeCons(){   }
                                           };

构造函数在创建对象时分配内存

编译器是将高级语言源代码转换为低级语言机器代码的软件程序。

它创建一个中间源代码。

编译器一次完全转换源代码

编译器可以一次性转换源代码, 因此速度更快。

查找错误是困难的。

用于语言C, C ++, C#, Scala等

空的

存在单个元素

堆栈已满

堆栈溢出

ArrayList实现动态数组来存储元素

由于存在调整大小的风险, 因此很难插入新元素

删除数据元素很困难

ArrayList快速访问和存储数据元素

List <type> al = new ArrayList <Type>(); //创建ArrayList

要指定静态变量, 我们需要使用关键字static和变量名

静态变量属于其类, 而不是实例

在加载类时将内存分配给静态变量

我们可以使用类引用访问静态变量

可以在类的所有实例之间共享静态变量

对象是物理实体。

对象被定义为其类的实例

可以使用新的关键字创建对象

创建对象时会占用内存。

一个对象可以根据需要多次创建。

在图形中, 允许使用多个路径

在图中, 没有任何根节点

图代表网络模型

在图中, 没有任何预定义数量的边。

一个接口只能有抽象方法(没有主体的方法)

对于接口的声明, 我们使用关键字” interface”。

接口支持多重继承

可以使用关键字” implements”在类中实现Interface

接口方法是隐式的公共和抽象。因此, 我们不能使用其他修饰符

来源:

https://www.srcmini02.com/32778.html

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?