热门!Adobe精品面试题最新汇总在这里啦

本文概述

  • 关于公司:Adobe
  • Adobe招聘流程
  • 第一轮:网上书面回合
  • 描述
  • 第一轮测试图案
  • A.定量和推理科
  • 能力面试问题
  • 1)如果房间里的灯泡每9秒钟闪烁一次, 它在一个小时的?中会闪烁多少次?
  • 2)Arjun, Ram和Vivek的年龄比例为4:7:9。如果9年前他们的年龄总和是53岁, 那么他们现在的年龄是多少?
  • 3)如果办公室员工的平均年龄为40岁, 并且有120名新员工加入公司, 而该公司的平均年龄为32岁。因此, 所有员工的平均年龄降低了4岁。那么, 现在公司的员工总数是多少?
  • 4)找到最大的4位数字, 该数字可以被88整除吗?
  • 5)计算前五个质数之和?
  • 6)仅” A” 字就能在2天内完成工作的1/4。仅” B” 字就能在4天内完成工作的2/3。如果三个工人一起工作, 他们可以在3天内完成工作, 那么仅” C” 将在2天内完成工作的哪一部分?
  • 7)有一天, 拉维开始从家中提早30分钟到达家中, 并迟到了50分钟才到达办公室, 同时开车速度比平时慢了25%。拉维通常需要多少时间才能在家中到达办公室?
  • 8)一位店主以卢比的价格出售一张桌子。 840的收益为20%, 另一张表格为卢比。 960亏损4%。他的总收益或损失是多少?
  • 9)如果在圆锥形帐篷中, 可以容纳10人。每个人必须拥有6平方米的空间站立和呼吸30立方米的空气。圆锥的高度是多少?
  • 10)A可以在10天内完成一件工作, B可以在12天内完成相同的工作, 而Ravi在15天内可以完成相同的工作。他们都一起开始工作, 但是A在工作完成2天后离开, B在工作完成3天后离开。查找完成工作的日期。
  • 推理问题
  • 1)如果MADRAS可以编码为NBESBT, 那么我们如何编码BOMBAY?
  • 2)这是系列中的下一项:3、4、6、9、13, _______
  • 3)如果w, x, y z是整数。有一个条件, 表达式x-y-z为偶数, 表达式y-z-w为奇数。如果x甚至必须为真?
  • 4)BXF, DVI, FTL, HRO, _____系列的下一个术语是什么
  • 5)如果使用某种代码语言,
  • 6)如果胜利与竞争有关, 那么发明与之有关。
  • 7)拉胡尔对阿卡什说:” 那个踢足球的男孩是我父亲妻子的女儿的两个兄弟中的较小者。” 这个踢足球的男孩和拉胡尔有什么关系?
  • 8)山姆介绍里娅后说:” 她是我母亲唯一兄弟的唯一侄子的妻子。” Riya与Sam有何关系?
  • 9)工程师:Map :: Bricklayer :?找到这个词。
  • 10)从以下选项中找出奇数词
  • B:技术MCQ示例
  • 1)以下内容的输出是什么
  • 2)在C语言中, 参数始终为_______
  • 3)查找以下代码的输出
  • 4)以下语句的用途是什么?
  • 5)查找以下代码的输出。
  • 6)使用三个未标记的节点可以形成的最大二叉树数量是多少?
  • 7)具有3个节点的结构上不同的可能二叉树的总数是多少?
  • 8)可以使用哪种排序算法对时间最短的随机链表进行排序?
  • 9)计算以下代码的输出
  • 10)计算以下代码的输出
  • 编码问题
  • 1)编写代码以反向链接列表?
  • 2)编写一个代码, 使用最小的加法数将两个数字相乘。
  • 3)写一个交换两个整数指针的程序?
  • 4)编写一个程序来计算斐波那契数列的第n个项?
  • 5)编写一个程序来计算一个数字中的总置位数?
  • 6)编写算法来计算X ^ N的输出, 其复杂度为log n。
  • 7)编写代码以检查二进制树是否是BST树?
  • 8)编写代码以从列表的末尾查找第n个元素?
  • 技术回合面试问题
  • 技术首轮
  • 1)区分typedef和#define?
  • 2)为什么我们使用sprint()函数?
  • 3)如何区分char a [] =?String和char * a =?String。
  • 4)解释数据断点?我们在哪里可以使用?
  • 5)区分new和malloc()?
  • 6)区分进程和线程?
  • 7)什么是C ++速记属性?它的作用是什么?
  • 8)通过函数原型的声明和定义, 你了解什么?
  • 9)你对条件运算符了解什么?
  • 10)C语言中的volatile关键字是什么?
  • 11)你对OS有什么了解?用最简单的方式解释。
  • 12)为什么我们在C和C ++中使用指针?
  • 13)区分指针调用和引用调用?
  • 14)你对calloc()和malloc()有什么了解?
  • 15)解释” 虚拟机” 一词吗?
  • 16)你对同步有什么了解?
  • 17)解释Mutex吗?什么是读写器问题?
  • 18)为什么要使用void关键字?
  • 19)解释退出受控循环?
  • 20)什么是DNS服务器?
  • 技术第二轮
  • 1)TCP / IP模型中的不同层是什么?解释每一层的协议?
  • 2)解释调用函数时堆栈的工作情况?什么时候发生堆栈溢出?
  • 3)解释声明的含义:int * const p&const int * const p?
  • 4)什么是C ++中的默认函数
  • 5)字典使用哪种数据结构?
  • 6)如何从一个字符串中也有重复的单词中找到一个唯一的单词?
  • 技术性第三轮或导演轮
  • 1)为河内塔写一个算法?
  • 2)编写代码以在” 链表” 列表中找到循环?你将如何删除此循环?
  • 3)你将如何设计Excel电子表格的数据结构?
  • 4)解释OS中的内存保护。
  • 5)什么是OS中的虚拟内存?
  • 6)编写算法以将元素插入到已排序的链表中?
  • 7)找到总和等于给定数的一对元素?
  • 也可以要求候选人提出以下问题
  • 人力资源回合
  • 1)简要介绍一下自己?
  • 2)为什么要加入Adobe?
  • 3)你拥有什么技能, 以便我们雇用你?
  • 4)你梦想中的公司是哪家?
  • 5)谈谈你的家庭背景吗?
  • 6)十年后, 你想在哪里看到自己?
  • 7)你独特和不同的品质是什么, 这使你成为该公司最合适的员工?
  • 8)你认为你是一个目标导向的人吗?
  • 9)你最大的优点和缺点是什么?
关于公司:Adobe Adobe Systems Incorporated, 也称为Adobe, 是美国计算机软件的跨国公司。 Adobe总部位于美国加利福尼亚州圣何塞, 在全球共有17000名员工(2017年)。 Adobe由John Warnock和Charles Geschke于1982年12月成立。Adobe的成立主要是为了开发和销售PostScript页面描述语言。公司提供各种创意软件产品和服务, 供专业人士, 应用程序开发商, 企业和消费者使用。 Adobe以Photoshop, Acrobat Reader, 便携式文档格式(PDF), Adobe Creative Suite和Adobe Creative Cloud而闻名。 Adobe主要关注三个领域, 分别是数字媒体, 数字营销以及印刷和出版。 Adobe是工作最出色的公司之一, 并且在2003年被评为美国最佳公司第5名。Adobe在2018年被Interbrand评为” 全球最佳品牌” 第51位。
Adobe的关键人物:
首席执行官兼董事长:Shantanu Narayen
首席财务官:John F Murphy
CTO:Abhay Parasn??is
Adobe招聘流程 Adobe招聘过程是困难的招聘过程之一。 Adobe非常仔细地选择候选人, 并进行了大量筛选以选择所有候选人中的最佳人才。 Adobe的招聘过程也与其他公司不同, 因为面试需要5到6轮。以下是招聘过程的主要步骤。
  1. 在线书面回合
  2. 小组讨论
  3. 多轮技术面试
  4. 导演轮
  5. 人力资源回合
学术标准:
  • X和XII中65%, 毕业或CGPA 7中70%。
  • 申请时没有积压。
第一轮:网上书面回合 描述 第一轮将是在线考试, 主要包括两个部分。第一部分将基于基本能力和推理。第二部分将包含基于C / C ++ / JAVA输出的MCQ问题和主观的编码问题。此回合是在Hackerrank平台上组织的, 候选人可以在其中使用任何首选语言(C, C ++或Java)进行编码。此轮的第一部分将是完成招聘过程中最舒适的一轮, 但需要有一个良好的速度来完成。
第一轮测试图案
Sections 持续时间 问题数 Topics
15 min 15个问题 量化智能算术代数时间和工作盈亏几何速度和距离百分比
30分钟 30个问题 逻辑推理难题数据解释血缘关系等
75-120 min 15-20 Questions C语言数据结构位处理
A.定量和推理科
  • 招聘过程的量化能力部分相对容易, 但是候选人需要具备基本的知识并且必须具有良好的速度。没有负面的标记。
  • 分析部分包含一些棘手的问题, 这些问题可能会占用更多时间, 因此在尝试这些部分时请务必小心。
样本能力倾向问题及其答案为第一轮做准备:
能力面试问题 1)如果房间里的灯泡每9秒钟闪烁一次, 它在一个小时的?中会闪烁多少次?
  1. 301
  2. 300
  3. 250
  4. 401
显示答案
答:一个
说明:
灯泡每9秒闪烁一次。
?小时=?* 60 = 45分钟
45分钟= 45 * 60 = 2700秒
因此, 光将在?小时内闪烁= 2700/9 = 300次
但是计数在第一次闪烁后开始, 因此总时间= 300 + 1 = 301
2)Arjun, Ram和Vivek的年龄比例为4:7:9。如果9年前他们的年龄总和是53岁, 那么他们现在的年龄是多少?
  1. 16, 28, 36
  2. 8, 20, 28
  3. 20, 35, 45
  4. 以上都不是
显示答案
答:一个
说明:Arjun, Ram和Vivek的年龄比例为4:7:9
令, Arjun的当前年龄= 4倍
拉姆的现龄= 7倍
Vivek的当前年龄= 9倍
根据问题
(4x-9)+(7x-9)+(9x-9)= 53
20x-27 = 53
X = 4
因此Arjun = 16, Ram = 28和Vivek = 36的现年年龄
3)如果办公室员工的平均年龄为40岁, 并且有120名新员工加入公司, 而该公司的平均年龄为32岁。因此, 所有员工的平均年龄降低了4岁。那么, 现在公司的员工总数是多少?
  1. 1200
  2. 120
  3. 360
  4. 240
显示答案
答案:d
说明:
设x为初始员工总数
员工的最初平均年龄= 40岁
(员工的初始总年龄)/ x = 40
员工初始总年龄= 40倍
120名员工的总年龄= 32 * 120
根据问题:
平均年龄减少了4岁, 因此
(40x + 32 * 120)/(x + 120)=(40-4)
(40x + 3840)= 36 *(x + 120)
4倍= 4320-3840
X = 120
因此, 现在公司的员工总数= 120 + 120 = 240
4)找到最大的4位数字, 该数字可以被88整除吗?
  1. 9768
  2. 9988
  3. 9944
  4. 8888
显示答案
答案:c
说明:
最大的4位数字= 9999
9999/88 =余数= 55
所以新的数字将是= 9999-55 = 9944
它将被88完全整除;因此, 最大的数字将是9944
5)计算前五个质数之和?
  1. 11
  2. 18
  3. 26
  4. 28
显示答案
答案:d
说明:
所需的五个素数之和=(2+ 3 + 5 + 7 + 11)= 28
6)仅” A” 字就能在2天内完成工作的1/4。仅” B” 字就能在4天内完成工作的2/3。如果三个工人一起工作, 他们可以在3天内完成工作, 那么仅” C” 将在2天内完成工作的哪一部分?
  1. 1/12
  2. 1/8
  3. 1/16
  4. 1/20
显示答案
答:一个
说明:
让我们用C = x的一天来工作
A的1天工作= 1/8
B的1天工作= 1/6
根据问题:
1/8 + 1/6 + x = 1/3
通过求解方程式:
x = 1/24
如果x是
1天工作= 1/24
因此, 两天的工作量为c = 1/12
7)有一天, 拉维开始从家中提早30分钟到达家中, 并迟到了50分钟才到达办公室, 同时开车速度比平时慢了25%。拉维通常需要多少时间才能在家中到达办公室?
  1. 20分钟
  2. 80分钟
  3. 60分钟
  4. 40分钟
显示答案
答案:c
说明:
假设t是从家到办公室的通常时间, 通常时间和速度时间= t, 速度= s
延迟时间和速度较慢速度降低25%= 3 / 4s, 时间= t + 20
D = s * t
D =(3秒/ 4)*(t + 20)
S * t =(3s / 4)*(t + 20)
4吨= 3吨+ 60
t = 60分钟。
8)一位店主以卢比的价格出售一张桌子。 840的收益为20%, 另一张表格为卢比。 960亏损4%。他的总收益或损失是多少?
  1. 收益提高100/17%
  2. 损失100/17%
  3. 增益20/3%
  4. 没有一个
显示答案
答:一个
说明:
1张桌子的成本价格=(100 * 840)/(100 + 20)= 700
2张桌子的成本价格=(100 * 960)/(100-4)= 1000
表的总成本价格= 1000 + 700 = 1700
总售价= 840 + 960 = 1800
收益=售价-成本价
增益= 1800-1700 = 100
增益%=(100 * 100)/ 1700
增益%= 100/17
9)如果在圆锥形帐篷中, 可以容纳10人。每个人必须拥有6平方米的空间站立和呼吸30立方米的空气。圆锥的高度是多少?
  1. 15m
  2. 37.5m
  3. 75m
  4. 150m
显示答案
答案:30m
说明:
如果, 1人占用的空间= 6平方米
10人占用的空间= 60平方米。米
因此, 圆锥形帐篷的底面积= pi * r * r = 60
因为每个人都需要呼吸空气= 30立方米
10个人需要空气到广度= 300立方米
因此, 圆锥形帐篷的体积(1/3)* pi * r * r * h = 600
20 * h = 600
h = 30m
10)A可以在10天内完成一件工作, B可以在12天内完成相同的工作, 而Ravi在15天内可以完成相同的工作。他们都一起开始工作, 但是A在工作完成2天后离开, B在工作完成3天后离开。查找完成工作的日期。
  1. 6天
  2. 5天
  3. 9天
  4. 7天
显示答案
答案:d
说明:
工作完成者:
A在10天之内, B在12天之内, C在15天之内,
完成的总工作量=(10, 12, 15)的L.C.M = 60单位
因此, A可以在1天内完成6个工作单元, B可以完成5个工作单元, C可以完成4个工作单元
根据问题, 完成x天的剩余工作, 然后
(6 + 5 + 4)* 2 +(5 + 4)*(x-3)+(4 * 3)= 60单位
解决之后
30+ 9(x-3)+ 12 = 60
X = 5天
因此, 所需的总天数= 5 + 2 = 7天。
推理问题 1)如果MADRAS可以编码为NBESBT, 那么我们如何编码BOMBAY?
  1. 重庆市
  2. CPOCBZ
  3. 中国人民银行
  4. CPNCPX
显示答案
答案:C
说明:
M A D R A S < =========> N B E S B T
每个字母都等同于下一个字母, 因此M代表N, A代表B, D代表E, 依此类推。
因此
B O M B A Y可以写成C P N C B Z
2)这是系列中的下一项:3、4、6、9、13, _______
  1. 16
  2. 15
  3. 18
  4. 17
显示答案
答案:c
说明:
如给定序列中的3, (3 + 1 = 4), (4 + 2 = 6), (6 + 3 = 9), (9 + 4 = 13), 所以(13 + 5 = 18)因此学期将是18
3)如果w, x, y z是整数。有一个条件, 表达式x-y-z为偶数, 表达式y-z-w为奇数。如果x甚至必须为真?
  1. 我一定很奇怪
  2. y-z必须是奇数
  3. z必须是偶数
  4. z必须是奇数
显示答案
答:一个
说明:
由于x是偶数, 因此x-y-z必须为偶数, 即使y和z都为奇数, 而y-z-w必须为奇数, 而w必须为奇数
4)BXF, DVI, FTL, HRO, _____系列的下一个术语是什么
  1. 联合警察
  2. KPL
  3. 良好
  4. 没有一个
显示答案
答案:d
说明:
如给定系列
B X F, D V I, F T L, H R O
对于第一个字母,
B-C-D, D-E-F, F-G-H, H-I-J
2个字母
X-W-V, V-U-T, T-S-R, R-Q-P
3个字母
F-G-H-I, I-J-K-1, L-M-N-O, O-P-Q-R所以下一项应该是JPR, 所以答案都不是, 因此下一个系列是-JPR
5)如果使用某种代码语言, 一世。 Guda buka意味着清澈的水
ii。 Pin gola意味着阴云密布的天空
iii。 Pin saf buka意味着湛蓝的天空
那么, 以下哪个词表示BLUE?
  1. 开门
  2. 一样的
  3. Pin
显示答案
答案:b
说明:
通过1和2和3陈述, 发现buka表示晴朗, pin表示天空, 因此saf表示蓝色。
6)如果胜利与竞争有关, 那么发明与之有关。
  1. 实验
  2. 发现
  3. 实验室
  4. 试用版
显示答案
答:一个
7)拉胡尔对阿卡什说:” 那个踢足球的男孩是我父亲妻子的女儿的两个兄弟中的较小者。” 这个踢足球的男孩和拉胡尔有什么关系?
  1. 他的
  2. 哥哥
  3. 长者的意思是铁则
  4. 表姐
显示答案
答案:b
说明:
【热门!Adobe精品面试题最新汇总在这里啦】我父亲的妻子=拉胡尔的母亲
我父亲妻子的女儿=拉胡尔的姐姐
两兄弟中的小者=拉胡尔的b兄弟。
8)山姆介绍里娅后说:” 她是我母亲唯一兄弟的唯一侄子的妻子。” Riya与Sam有何关系?
  1. 妻子
  2. 嫂子
  3. 妹妹
  4. 资料不足
显示答案
答:一个
说明:
我母亲的唯一兄弟=山姆的叔叔
唯一侄子的妻子=山姆的妻子
因此, Riya是Sams的妻子。
9)工程师:Map :: Bricklayer :?找到这个词。
  1. 模板
  2. 模子
  3. 水泥
  4. 设计
显示答案
答:一个
10)从以下选项中找出奇数词
  1. 方向盘
  2. 他们的
  3. 汽车
  4. 发动机
显示答案
答案:c
说明:
在选项中, 方向盘, 轮胎和发动机都是汽车的一部分。
B:技术MCQ示例 第一轮的第二部分是技术MCQ和编码部分。这部分很难破解。它需要彻底研究数据结构, C, 位操作和算法的概念。有一些样本问题可供Adobe面试, 并附有答案。
1)以下内容的输出是什么 int main()
{
你我;
int arr [5] = {5};
对于(i = 0; i < 5; i ++)
printf(“ %d” , arr [i]);
返回0;
}
  1. 0 0 0 0 0
  2. 5 0 0 0 0
  3. 5 5 5 5 5
  4. 错误
显示答案
答案:b
2)在C语言中, 参数始终为_______
  1. 通过参考
  2. 通过值结果
  3. 价值传递
  4. 指针变量通过引用传递, 非指针变量通过值传递
显示答案
答案:c
3)查找以下代码的输出 #include < stdio.h>
int main()
{
printf(“ %d” , main);
返回0;
}
  1. 编译时间错误
  2. 主要功能地址
  3. 0
  4. 任何随机值
显示答案
答案:b
4)以下语句的用途是什么? scanf(“ %3s” , str);
  1. 最多读取3个字符
  2. 从控制台读取3个字符
  3. 取字符串str为3的倍数
  4. 以上都不是。
显示答案
答:一个
5)查找以下代码的输出。 字符p [10];
char * s =” 计算机” ;
int length = strlen(s);
你我;
对于(i = 0; i < length; i ++)
p [i] = s [length-i];
printf(“ %s” , p)
  1. retupmoc
  2. 电脑
  3. 空值
  4. 没有输出将打印
显示答案
答案:d
6)使用三个未标记的节点可以形成的最大二叉树数量是多少?
  1. 1
  2. 4
  3. 6
  4. 5
显示答案
答案:d
7)具有3个节点的结构上不同的可能二叉树的总数是多少?
  1. 10
  2. 5
  3. 168
  4. 245
显示答案
答案:b
说明:
结构上可能的树数=!2N /(!N *(!(N + 1))
其中n =节点数, 因此N = 3,
答案将是5。
8)可以使用哪种排序算法对时间最短的随机链表进行排序?
  1. 快速排序
  2. 进行排序
  3. 插入排序
  4. 堆排序
显示答案
答案:b
9)计算以下代码的输出 #include < stdio.h>
结构体
{
int x;
静态整数
};
int main()
{
printf(“ %d” , sizeof(struct st));
返回0;
}
  1. 8
  2. 4
  3. 编译时间错误
  4. 运行时错误
显示答案
答案:c
说明:
在C语言中, 我们不能在struct和unions类型内包含静态成员, 因此此程序将生成编译时错误。
10)计算以下代码的输出 #include < stdio.h>
int main()
{
int arr [] = {5, 8, 10, 12, 18};
INT * P = ARR;
++ * p;
p + = 3;
printf(“ %d” , * p);
返回0;
}
  1. 10
  2. 12
  3. 18
  4. 无输出。
显示答案
答案:b
编码问题 这部分是一轮编码, 其中应试者需要使用任何首选语言(C / C ++ / Java)为给定问题编写代码。下面给出一些编码问题以供练习。
1)编写代码以反向链接列表?
#include< stdio.h> #include< stdlib.h> struct Node { int data; struct Node* next; }; /* Function for reversing the linked list */static void reverseList(struct Node** head_ref) { struct Node* t2 = NULL; struct Node* start = *head_ref; struct Node* t1 = NULL; while (start != NULL) { t1 = start-> next; start-> next = t2; t2 = start; start = t1; } *head_ref = t2; } void newNode(struct Node** head_ref, int new_data) { struct Node* new_node = (struct Node*) malloc(sizeof(struct Node)); new_node-> data = http://www.srcmini.com/new_data; new_node-> next = (*head_ref); (*head_ref) = new_node; } /* Function to print linked list */void printList(struct Node *head) { struct Node *temp = head; while(temp != NULL) { printf("%d ", temp-> data); temp = temp-> next; } }int main() { struct Node* head = NULL; newNode(& head, 20); newNode(& head, 14); newNode(& head, 30); newNode(& head, 68); printf("Input linked list\n"); printList(head); reverseList(& head); printf("\nReversed Linked list \n"); printList(head); }

输出
Input linked list68 30 14 20 Reversed Linked list 20 14 30 68

2)编写一个代码, 使用最小的加法数将两个数字相乘。
#include< stdio.h> int main(){int product=0, x, y, n; x=10; y= 20; for(n = 0; n < y; n++){product = product + x; }printf("\n The product of %d and %d: %d\n", x, y, product); return 0; }}

输出
The product of 10 and 20: 200

3)写一个交换两个整数指针的程序?
#include< stdio.h> int main(){int *a, *b, *temp, x=20, y=30; a=& x; b=& y; printf("Before swap %d %d", *a, *b); *temp= *a; *a=*b; *b= *temp; printf("\n After swap %d %d", *a, *b); return 0; }

输出
Before swap 20 30 After swap 30 20

4)编写一个程序来计算斐波那契数列的第n个项?
#include< stdio.h> int fun(int n) { if (n < = 1) return n; elsereturn fun(n-1) + fun(n-2); } int main(){int n1=0, n2=1, n3=0, n=7; printf("The series is %d %d", n1, n2); for(int i=2; i< =n; i++){n3=n1+n2; printf(" %d", n3); n1=n2; n2=n3; }printf("\nThe nth term is %d", fun(n)); }

输出
The series is 0 1 1 2 3 5 8 13The nth term is 13

5)编写一个程序来计算一个数字中的总置位数?
#include < stdio.h> int main() {int n=15, count_zerobit= 0, count_onebit=0, total_bits=0; while(n> 0){if(n%2==0)count_zerobit=count_zerobit+1; elsecount_onebit=count_onebit+1; n=n> > 1; } total_bits=count_onebit+count_zerobit; printf("Total bits are=%d Total zero bits are=%d Total one's bits are= %d", total_bits, count_zerobit, count_onebit); }

输出
Total bits are=4 Total zero bits are=0 Total one's bits are= 4

6)编写算法来计算X ^ N的输出, 其复杂度为log n。
#include< stdio.h> int pow(int x, int n) { int y; if( n == 0) return 1; y = pow(x, n/2); if (n%2 == 0) return y*y; elsereturn x*y*y; } int main() { int x = 6; int n = 3; printf("The output for x^n, where x=%d, n=%d, %d", x, n, pow(x, n)); return 0; }

输出
The output for x^n, where x=6, n=3, 216

7)编写代码以检查二进制树是否是BST树?
public class CheckBST { public static Node prevNode = null; //Method1: public boolean isBST1(Node root) {if (root != null) {if (!isBST1(root.left))return false; if (prevNode != null & & prevNode.data > = root.data) {return false; }prevNode = root; return isBST1(root.right); }return true; } //method 2 public boolean isBST2(Node root, int min, int max) {if (root != null) {if (root.data > max || root.data < min) {return false; }return isBST2(root.left, min, root.data)& & isBST2(root.right, root.data, max); } else {return true; } } public void inorder(Node root) {if (root != null) {inorder(root.left); System.out.print("" + root.data); inorder(root.right); } } public static void main(String args[]) {CheckBST cb = new CheckBST(); Node root = new Node(7); root.left = new Node(3); root.right = new Node(9); root.left.left = new Node(1); root.left.right = new Node(4); root.right.left = new Node(8); root.right.right = new Node(10); System.out.println("Input Tree is "); cb.inorder(root); System.out.println(); System.out.println("Tree is BST or not: " + cb.isBST1(root)); System.out.println("Tree is BST or not : "+ cb.isBST2(root, Integer.MIN_VALUE, Integer.MAX_VALUE)); root.left.right.right = new Node(20); System.out.println("Input Tree is "); cb.inorder(root); System.out.println(); System.out.println("Tree is BST or not: " + cb.isBST1(root)); System.out.println("Tree is BST or not : "+ cb.isBST2(root, Integer.MIN_VALUE, Integer.MAX_VALUE)); }}class Node { int data; Node left; Node right; public Node(int data) {this.data = http://www.srcmini.com/data; left = null; right = null; }}

输出
Input Tree is 13478910Tree is BST or not: trueTree is BST or not: trueInput Tree is 1342078910Tree is BST or not: falseTree is BST or not: false

8)编写代码以从列表的末尾查找第n个元素?
public class ListElement{ Node head; static class Node { int value; Node next; Node(int value) {this.value = http://www.srcmini.com/value; } } public void addToList(Node node) { if (head == null) {head = node; } else {Node temp = head; while (temp.next != null)temp = temp.next; temp.next = node; } } public void printList() {Node temp = head; while (temp != null) {System.out.format("%d ", temp.value); temp = temp.next; }System.out.println(); } public Node nthFromLastNode(Node head, int n) {Node firstPtr=head; Node secondPtr=head; for (int i = 0; i < n; i++) {firstPtr=firstPtr.next; } while(firstPtr!=null){firstPtr=firstPtr.next; secondPtr=secondPtr.next; } return secondPtr; } public static void main(String[] args) {ListElement li = new ListElement(); // Creating a linked listNode head=new Node(18); li.addToList(head); li.addToList(new Node(20)); li.addToList(new Node(30)); li.addToList(new Node(15)); li.addToList(new Node(10)); li.addToList(new Node(16)); li.printList(); Node nthNodeFromLast= li.nthFromLastNode(head, 4); System.out.println("4th node from end is :"+ nthNodeFromLast.value); } }

输出
18 20 30 15 10 16 4th node from end is: 30

技术回合面试问题 这是Adobe面试过程的第三轮。它包含各种回合。在这一轮中, 将对候选人的技术技能进行检查。如果候选人通过了一个回合, 那么他/她可以继续下一回合。
技术首轮 1)区分typedef和#define? typedef和#define之间的主要区别如下:
  1. typedef用于定义类型或为类型赋予新名称, 而#define是预处理器指令, 用于定义宏。
  2. typedef将实际定义赋予新的数据类型, 而#define仅用于将值定义复制粘贴到使用它的位置。
  3. typedef是编译器已知的, 但#define仅是预处理器已知的。
例:
#include < stdio.h> typedef int CHAR; #define AP "Andhra Pradesh"int main() { CHAR a, b; a = 10; printf("%d\n""%s", a, AP); return 0; }

输出
10Andhra Pradesh

2)为什么我们使用sprint()函数? sprint()是一个C库函数, 称为” 字符串打印” 。 sprintf函数用于将格式化的数据输出保存为String。
语法
intsprintf (char *string, const char *form, .... )

例:
#include< stdio.h> int main() { char string[50]; int a = 10, b = 5, c; c = a * b; sprintf(string, "multiplication of %d and %d is %d", a, b, c); printf("%s", string); return 0; }

输出
multiplication of 10 and 5 is 2

3)如何区分char a [] =?String和char * a =?String。 声明:
  1. 字符a [] =” 计算机” ;
  2. char * a =” 计算机” ;
上面两个语句之间的区别在于, 第一个语句将创建一个由9个元素组成的数组, 该数组将自动添加空指针, 而数组” a” 的大小将为9。
但是第二条语句将创建一个指针变量。我们无法对此指针变量执行任何数组操作, 因为它将以只读模式存储。
例:
#include < stdio.h> int main() { char a[] = "Computer"; printf("%lu", sizeof(a)); a[1] = 'n'; printf("\n%s", a); return 0; }

输出
9Cnmputer

例子2
#include < stdio.h> int main() { char *a = "Computer"; printf("%lu", sizeof(a)); return 0; }

4)解释数据断点?我们在哪里可以使用? 数据断点是C ++的一项强大功能, 当存储在特定内存位置的值发生更改时, 它可使我们停止执行。数据断点可用于解决内存损坏问题。
5)区分new和malloc()? new和malloc()都用于动态内存分配。但是new和malloc之间存在各种差异, 如下所示:
  • new是C语言的运算符, 而malloc()是用于内存分配的函数。
  • new运算符调用构造函数, 而malloc()不调用构造函数。
  • 新操作员从” 空闲存储” 中分配的内存, 而malloc()函数从堆中分配的内存。
  • 执行失败时, new运算符将引发异常, 而malloc()返回Null。
  • new运算符不需要sizeof()运算符, malloc()函数需要sizeof()运算符才能知道内存大小。
6)区分进程和线程? 以下是进程和线程之间的基本区别:
  • 进程是程序的执行, 而线程是轻量级进程。
  • 进程不像内存那样共享资源, 而线程可以共享资源。
  • 该进程需要花费更多时间进行上下文切换, 而线程需要更少的时间进行上下文切换。
  • 与线程相比, 该进程的效率较低。
7)什么是C ++速记属性?它的作用是什么? C ++提供了简写属性, 使程序员能够以较短的方式使用赋值运算符。
例:
x = x + 5; 可以用简写写成x + = 5
x = x-10; 可以写成x- = 10;
8)通过函数原型的声明和定义, 你了解什么? 函数原型声明:函数原型声明语句提供有关函数的以下信息:
  1. 它告诉函数的符号名称。
  2. 有关函数返回类型的信息。
  3. 有关作为参数传递的参数的信息及其数据类型。
例:
int add(int a, int b, int c)

其中add是函数的名称, a, b和c是传递的参数。
函数定义:函数定义是函数的实际源代码。函数定义提供了该函数实际功能的信息。
例:
int add(int a, int b, int c){< br> c= a + b; return c; }

9)你对条件运算符了解什么?
  • 条件运算符是具有三个操作数的三元运算符, 它们用作if-else语句的简写形式。
  • 如果条件为true, 条件运算符将返回第一个表达式, 如果条件为false, 则返回第二个表达式。
语法
(Check expression)? Expression1: Expression2;

例:
var = (x < 10) ? 20 : 40;

10)C语言中的volatile关键字是什么? volatile关键字是一个限定符, 在声明时与变量一起使用。
它向编译器提供了一个信息, 即变量的值在任何时候都可以更改, 即使它似乎没有被修改。
易失性关键字用于将变量声明为易失性变量。可以在数据类型之前或之后使用它。
语法
volatile int x; or int volatile x;

11)你对OS有什么了解?用最简单的方式解释。
  • 操作系统是一个程序, 它是用户和硬件之间的接口
  • 它在加载后通过引导程序管理计算机中的所有其他程序。
  • 操作系统充当计算机或移动设备的骨干。
  • 操作系统的示例是UNIX, LINUX, MS-Windows, MAC-OS等。
12)为什么我们在C和C ++中使用指针? 指针是存储C和C ++中另一个变量的地址的变量。
以下是为什么我们在C和C ++中使用指针的主要原因:
  • 指针可用于动态内存分配。
  • 指针有助于执行数组算术和访问数组元素。
  • 指针有助于创建API。
  • 在数据结构的实现中使用指针。
  • 指针有利于通过引用传递。
13)区分指针调用和引用调用? 在C ++语言中, 我们可以通过引用或指针将参数传递给函数, 两者都是正确的方法且完全相同, 但是两者之间的基本区别是:
  • 我们可以直接将指针分配为空指针, 但是不能通过引用来完成。
  • 我们可以重新分配一个指针, 但是引用不能重新分配。
14)你对calloc()和malloc()有什么了解? 在C语言中, calloc()和malloc()是库函数, 并且都用于动态内存分配。这意味着它将在运行时根据堆部分中的要求分配内存。
malloc():malloc()函数是一个库函数, 它分配一个所请求的内存块并返回一个指向其无效的指针, 该指针可以转换为任何返回类型。如果没有足够的内存, 它将返回空值。
语法
ptr=(cast-type*)malloc(byte-size)

calloc():calloc()函数也是一个库函数, 用于分配请求大小的多个内存块。它最初将内存初始化为零, 如果内存不足, 则返回NULL。
语法
ptr=(cast-type*)calloc(number, byte-size)

15)解释” 虚拟机” 一词吗? 虚拟机是一个行为类似于单独计算机的软件程序。它的工作原理与主计算机相同, 并且能够运行应用程序和其他程序。在称为主机的主机中创建了一个称为guest虚拟机的虚拟机。根据其用途, 有两种类型的虚拟机。
  1. 系统虚拟机
  2. 处理虚拟机
16)你对同步有什么了解? 同步是同时执行两件事的过程。
同步有两种类型:
  • 进程或线程同步
  • 数据同步
进程同步:进程/线程同步是一种控制两个并发线程之间共享资源访问的机制。它确保两个并发线程不会同时共享同一资源。同步处理诸如死锁, 饥饿, 等待繁忙等问题。
数据同步:数据同步是一种确保两个设备之间数据完整性的技术。借助数据同步, 它可以将单个数据的多个副本保存在不同的位置。它包括文件同步, 日记, Raid等。
17)解释Mutex吗?什么是读写器问题? 互斥体:
  • 在多线程中, Mutex(互斥对象)是一个程序对象, 它为线程提供锁定机制。
  • Mutex确保两个或多个线程之间正确的线程同步。一次只能有一个线程可以执行程序或资源。
读写器问题:
在OS中, 一种情况称为特定共享数据区域的读写器问题, 其中包括:
  • 可以从该共享区域读取任意数量的阅读器, 但一次只能写入一个作者。
  • 当一个作者在特定区域中书写时, 没有其他进程可以访问该区域。
  • 如果在该共享区域中有非零读者, 则writer不能在其中写入。
此问题通常发生在并发或多线程中。
18)为什么要使用void关键字? 我们可以将void关键字用于两个目的:
函数参数:当我们使用void作为函数参数时, 表示函数不接受任何值。
例:
int showMessage(void){}

函数返回类型:当我们将void用作函数返回类型时, 表示将不返回任何内容。
例:
void showMessage() {}

void关键字也可以与指针一起使用, 这使其功能更强大, 因为当void与指针一起使用时, 它被称为泛型类型, 可以容纳任何类型的地址。
19)解释退出受控循环? 出口控制循环是一种循环类型, 它首先执行指令, 然后检查条件。当我们使用退出控制循环时, 即使条件为假, 至少也会执行一次。 do-while循环是退出控制循环的一个示例。
#include < stdio.h> int main() {int x = 10; do{printf("\n the value of x is %d", x); x - -; }while(x> =5); return 0; }Output: the value of x is 10 the value of x is 9 the value of x is 8 the value of x is 7 the value of x is 6 the value of x is 5

20)什么是DNS服务器? DNS服务器是DNS(域名系统)基础结构的主要部分。它是一台计算机服务器, 用于存储和管理IP地址及其各自的主机名的数据库。
DNS服务器也称为名称服务器, 用于将域名映射到相应的IP地址。
单个域名可以具有多个IP, 这意味着IP地址可以随时间变化。
热门!Adobe精品面试题最新汇总在这里啦

文章图片
技术第二轮 1)TCP / IP模型中的不同层是什么?解释每一层的协议? TCP / IP模型被称为传输控制协议/ Internet协议。 TCP / IP模型是OSI模型的实用且简洁的版本。当前的网络体系结构取决于TCP / IP模型。它主要包括四层:
  • 应用层
  • 传输层/主机到主机层
  • 网络层
  • 链路层/网络访问层
1.链接层:
负责通过网络的物理数据流。它由光纤, 同轴电缆或双绞线等硬件设备组成。在这一层中, 数据以位和帧的形式传输。
在此级别使用的协议是以太网, 令牌环等。
2. Internet层:
Internet层是Link层的上层。该层将数据转换为数据包, 称为IP数据报, 并通过网络跨主机发送这些数据报。这些数据报由主机和目标地址组成, 它们通过网络转发。
在此级别上使用的主要协议是:
  • IP(互联网协议):此协议负责使用包头组成的地址将包从源主机转发到目的地。 IP有两个主要版本IPv4和IPv6。
  • ICMP(Internet控制消息协议):该协议主要负责通知网络中的问题。
  • ARP(地址解析协议):ARP协议是TCP / IP模型的基本协议, 负责将IPv4地址解析为物理地址。
3.传输层:这是TCP / IP模型的第三层, 负责源主机和目标主机之间的通信以及无错误的数据传输。
该层主要包括两个协议:
TCP(传输控制协议):TCP是可靠的协议, 用于源主机和目标主机之间的无错误通信。这是一个面向连接的协议。
UDP(用户数据报协议):与TCP协议相比, 该协议不可靠, 我们可以使用不需要可靠通信的协议。它是无连接协议。
4.应用层:这是TCP / IP模型的顶层。它描述了应用协议并提供了节点到节点的通信。
该层包含各种更高级别的协议, 它们是:
  • HTTP和HTTPs(超文本传输??协议)
  • FTP(文件传输协议)
  • SSH(安全外壳)
  • TFTP(私有文件传输协议)
  • SMTP(简单邮件传输协议)
  • DHCP(动态主机配置协议)
2)解释调用函数时堆栈的工作情况?什么时候发生堆栈溢出? 就像堆一样, 堆栈是RAM的特定区域。但是堆栈用于存储函数内部使用的局部变量, 参数和返回值, 堆栈可以自动存储和分配内存。
当我们调用一个函数时, 堆栈执行以下步骤:
  • 为返回变量增加空间。
  • 将参数压入堆栈。
  • 推送功能的局部变量。
当我们调用一个函数时, 堆栈会添加一个堆栈帧, 其中包含用于实际参数, 局部变量, 返回地址等的空间。该堆栈帧位于活动帧中, 直到调用time函数为止, 一旦执行完成, 则将堆栈移出该堆栈堆栈中的帧。
堆栈溢出:我们知道堆栈在执行后释放了内存并释放了空间, 但是在使用完完整的堆栈空间后仍然有条件, 并且没有更多的空间来保存变量, 因此称为堆栈溢出。发生这种情况的原因是堆栈的空间大小也受到限制, 并且在执行时, 如果我们分配的内存比可用内存多, 则发生溢出并导致程序崩溃。堆栈溢出的一些示例是:
  • 使用无限递归
  • 使用非常大的堆栈变量
  • 使用非常深的递归
3)解释声明的含义:int * const p&const int * const p? int * const p:通过声明指针的方式意味着我们将点变量p声明为常量, 不能更改。我们不能更改其地址的保存, 也不能指向其他变量。如果我们尝试更改p的地址, 则将给出编译时错误。
const int * const p:以这种方式声明指针意味着, 我们无法更改指针的地址, 因为我们无法更改该地址的地址。如果我们尝试这样做, 那么它将生成一个编译时错误。
4)什么是C ++中的默认函数 C ++提供了以下六个默认成员函数:
  • 默认构造函数
  • 驱逐舰
  • 复制构造函数
  • 复制分配运算符
  • 移动构造函数
  • 移动分配运算符
5)字典使用哪种数据结构? 要实现字典, 应使用哪种类型的数据结构取决于我们所需的内容, 因此有一些以下数据结构可用于实现字典。
哈希表:如果我们想要一个简单的字典, 没有前缀作为选项, 或者是最近邻居搜索, 那么我们可以对字典使用哈希或哈希表。
特里:如果我们要添加前缀和快速查找, 这可能是一个不错的选择。但是, 它比其他数据结构占用更多的空间。
三元搜索树:如果我们想要像trie的所有品质, 但又不想给更多的空间, 那么我们可以使用三元搜索树。
BK-树:如果我们需要诸如拼写检查器, 查找相似单词等规范, BK-树是最好的数据结构之一。
6)如何从一个字符串中也有重复的单词中找到一个唯一的单词? 我们可以使用HashMap, Set和Regex从字符串中找到唯一的单词。
还可以向候选人询问以下问题:
  1. 使用动态编程, 实现Snake and Ladder游戏并找到给定游戏中从1到100所需的最小移动数。
  2. 为DFA的数据结构建模, 该数据结构将事件作为参数并执行所需的操作。
  3. 解决三个贴错标签的罐子的问题。
  4. 如何比较两个二叉树?
  5. 如何证明一棵树的内部节点数少于叶子数?
技术性第三轮或导演轮 此回合是具有挑战性的回合, 因为在此回合中, 经理将根据你的项目提出问题, 因此应聘者必须对自己完成的项目有深入的了解, 并需要解决一些难题。
1)为河内塔写一个算法? 河内塔是一个非常流行的数学难题。在这个难题中, 我们得到了三个圆盘和三个杆。盘片按升序排列在第一根杆中。我们需要将磁盘从第一杆以相同的顺序转移到第三杆。
还有一些规则:
  • 我们可以一次移动一个磁盘
  • 我们只能移动最上面的磁盘
  • 磁盘应始终按升序排列, 即, 较大的磁盘不能放在较小的磁盘上。
算法:
假设有塔Beg, Aux和Dest, 并且有两个磁盘, 其中n磁盘是较大的磁盘, n-1是较小的磁盘。
开始
步骤1:将n-1磁盘从Beg塔转移到Aux
步骤2:将N磁盘从Beg移至End
步骤3:将磁盘n-1从塔辅助移到C.
Tower(n, Beg, Aux, Dest)BeginIf n=1 then, Print: Beg-> Dest; else Call Tower(n-1, Beg, Dest, Aux); Call Tower(n, Beg, Aux, End); Call Tower(n-1, Aux, Beg, End); endifEnd

2)编写代码以在” 链表” 列表中找到循环?你将如何删除此循环?
#include< stdio.h> #include< stdlib.h> struct Node { int data; struct Node* next; }; /* Function for removing the loop. */void remLoop(struct Node *, struct Node *); /*Function to remove and detect the loop*/int detAndRemLoop(struct Node *list) { struct Node *p1 = list, *p2 = list; while (p1 & & p2 & & p2-> next) { p1 = p1-> next; p2 = p2-> next-> next; /*if p1 and p2 will meet at some point which means there is a loop*/if (p1 == p2) { remLoop(p1, list); printf("Loop is occurred\n"); /* Return 1 if loop is found */return 1; } } /* Return 0 if there is no loop*/ return 0; } /* Function to remove loop. */void remLoop(struct Node *loop_node, struct Node *head) { struct Node *ptr1 = loop_node; struct Node *ptr2 = loop_node; // Count the number of nodes in loop unsigned int k = 1, i; while (ptr1-> next != ptr2) { ptr1 = ptr1-> next; k++; } // Fix one pointer to head ptr1 = head; ptr2 = head; for (i = 0; i < k; i++) ptr2 = ptr2-> next; while (ptr2 != ptr1) { ptr1 = ptr1-> next; ptr2 = ptr2-> next; } ptr2 = ptr2-> next; while (ptr2-> next != ptr1) ptr2 = ptr2-> next; /* Set the next node to Null to fix the loop */ ptr2-> next = NULL; } /* Function to print linked list */void printList(struct Node *node) { while (node != NULL) { printf("%d ", node-> data); node = node-> next; } } struct Node *newNode(int key) { struct Node *temp = (struct Node*)malloc(sizeof(struct Node)); temp-> data = http://www.srcmini.com/key; temp-> next = NULL; return temp; } int main() { struct Node *head = newNode(40); head-> next = newNode(15); head-> next-> next = newNode(12); head-> next-> next-> next = newNode(10); head-> next-> next-> next-> next = newNode(4); /* Create a loop*/ head-> next-> next-> next-> next-> next = head-> next-> next; detAndRemLoop(head); printf("Linked List after removing loop \n"); printList(head); return 0; }

输出
Loop is occurredLinked List after removing loop 40 15 12 10 4

3)你将如何设计Excel电子表格的数据结构? 我们可以使用以下方法设计Excel电子表格:
  • 二维数组(但是会占用很多空间)
  • 稀疏矩阵
  • 地图等
4)解释OS中的内存保护。 内存保护是一种控制未经授权访问计算机内存的机制。内存保护可防止进程未分配的内存访问。首先检查内存地址, 然后由进程使用, 以查看是否分配了地址。
有两个寄存器LBR和UBR用于实现存储器保护。
5)什么是OS中的虚拟内存? 虚拟内存是操作系统的内存管理技术。当主存储器没有足够的空间来执行代码时, 虚拟存储器是提供给程序的额外空间。它暂时将数据从RAM传输到磁盘存储, 该磁盘使用硬盘的非活动内存, 称为虚拟内存。
6)编写算法以将元素插入到已排序的链表中? 假设链表是按升序排序的, 则其算法如下。设输入节点为13并赋值为n
假设输入链接列表为:
3 8 11 15 20

1)如果给定的链表为空, 则将该节点分配为head并返回它。
2)如果节点n的值小于头节点的值, 则在开始处插入该节点并将其分配为头。
3)在循环中, 搜索适当的节点, 然后将其插入输入节点。要从头开始搜索适当的节点, 请继续移动直到到达值大于输入节点的节点x(假设15)。 x之前的节点将是适当的节点(11)。
4)在步骤3中找到的相应节点(11)之后插入节点(13)。
插入后:
3 8 11 13 15 20

7)找到总和等于给定数的一对元素?
#include < stdio.h> void Pair(int arr[], int n, int sum){for (int i = 0; i < =n; i++){for (int j = i + 1; j < =n; j++){if (arr[i] + arr[j] == sum){printf("Pair element found at position %d and %d\n ", i, j); }}}} int main(){int arr[] = { 5, 8, 9, 1, 6, 2, 7, 3}; int sum = 11; int n = sizeof(arr)/sizeof(arr[0]); Pair(arr, n, sum); return 0; }

输出
Pair element found at position 0 and 4 Pair element found at position 1 and 7 Pair element found at position 2 and 5

也可以要求候选人提出以下问题
  1. 如果存在一个数字数组, 其中包含从1到n的数字。如果我们用另一个替换一个数字。在O(N)中找到两个数字。
  2. 如果在婚姻职能中有n个人, 则将这些人分为两组, 这样每个人彼此认识?
  3. 使用动态编程, 实现Snake and Ladder游戏并找到给定游戏中从1到100所需的最小移动数。
  4. 一个城市有n座房屋。全部放在一行中。我们可以用三种颜色(R, G, B)中的任何一种给房屋着色。每种颜色都会给每个房屋上色的费用。没有两个邻居的房子可以具有相同的颜色。打印最低成本为所有房屋上色。
  5. 如果给定LinkedList和数字k。在一组k中反向LinkedList。
人力资源回合 人力资源回合将是整个招聘过程的最后一轮。与上述所有回合相比, 这是一个简单的回合, 面试官只想与候选人互动。在这一回合中, 面试官将根据沟通技巧和软技能对候选人进行评判。
1)简要介绍一下自己? 这个问题是一个非常普遍的问题, 大多数面试中都问这个问题。可以通过以下方式回答这个问题。
早上好/下午/晚上, 先生/妈妈, 很高兴有这个机会介绍自己。我叫Anamika Singh, 属于乌代浦。我已经从诺伊达工程技术学院的CSE分公司完成了B. Tech的学士学位, 并且在圣约翰·英特学院(Saint John Inter College)上学。如果我谈论我的家庭成员, 那么我的家庭中就有5个成员, 包括我在内。我父亲是政府老师, 母亲是家庭主妇, 我还有一个弟弟, 上个月他完成了高中毕业。我对C, C ++和Java等编程语言有很好的了解。我还创建了一些基于大学的有关这些技术的项目。我是一个非常自信, 聪明和适应能力强的人。我可以在任何环境中适应自己, 并可以应对任何类型的情况。我的爱好是打羽毛球, 跳舞, 绘画和上网。谢谢。
2)为什么要加入Adobe? 面试官问这个问题, 以检查你是否真的有兴趣加入, 或者你加入该公司的动机是什么。你应通过以下方式回答此问题:
主席先生, Adobe是遍布全球的伟大公司之一。每个人都希望与Adobe合作。这是一个工作的好地方。而且我的技术能力符合公司的要求。我可以展示自己的技术技能为公司的发展以及职业发展做出贡献。
3)你拥有什么技能, 以便我们雇用你? 通过这个问题, 面试官想检查一下, 你对自己的技能的了解程度如何, 以及对自己的看法与他人不同。对此的答案应为:
我对C, C ++, Java和数据结构有很好的理论和实践知识。我已经针对这些技术创建了多个项目。我可以在比其他更少的时间内非常有效地解决编码难题。
4)你梦想中的公司是哪家? 通过这个问题, 面试官想检查一下你的热情。该公司是你梦想中的公司, 还是你没有其他选择, 想要加入该公司。因此考生应仔细回答这个问题。
要回答这个问题, 候选人在选择公司的特征时, 切勿使用任何其他公司的名称。
例:
我的梦想工作是从事创新, 并向世界提供可以改变人们生活方式的产品。我对此工作感到很兴奋。据我所知, Adobe是一家致力于创新和创造力的公司。
5)谈谈你的家庭背景吗? 这是一个普遍而轻松的问题, 因为你无需花太多时间来回答这个问题。要回答这个问题, 你需要告诉你你有多少名成员以及他们做什么。
例:
我的家人有五个成员, 包括我在内。我的父亲Jay Prakash先生是一名商人, 从事电子设备业务。我的母亲Sunita夫人是一位出色的家庭主妇。我有两个哥哥, 他们是HCL技术的软件开发人员。
6)十年后, 你想在哪里看到自己? 例:
十年后, 我希望自己能在这家公司中担任各自的职务, 从而可以承担公司的重大职责。我想在每个级别上学习, 这将提高我的技能, 并将对公司的发展有所帮助。
7)你独特和不同的品质是什么, 这使你成为该公司最合适的员工? 这是与” 我为什么要雇用你” 相同的问题, 答案应为第3个问题。
8)你认为你是一个目标导向的人吗?
是的, 我是一个目标明确的人, 我有一些人生的关键目标, 我要尽早实现。我会定期更新我的目标清单, 直到达到目标为止。
9)你最大的优点和缺点是什么? 我最大的优点就是我的自我激励能力。有了这个, 我可以面对任何挑战。
我最大的弱点是我的情感天性。当我看到某人处于任何不利状况时, 我都容易受到伤害。
才智
推理科
技术(MCQ)+编码测试(主观)

    推荐阅读