Adobe 面经

LinkedIn 申请的

第一轮

第二轮

He asked me to explain my projects in detail first.

第三轮

This was more of a language which focussed more on language-specific details.

For me, it was C++. First, he asked me to rate myself in C and C++. I rated 9 in C++ but 8 in C. He asked me the reason and I said pointers are my nightmare. Then, he told I am going to ask lot of pointer questions today. :stuck_out_tongue:

Questions asked were:

  • Define a function pointer
  • Create a 2D array dynamically using pointers
  • A lot of discussions went around virtual functions
  • Can virtual functions be inline? Ans: No . Give Reason as well.
  • Generalized stack using a template. Create a class and write all the functions.
  • A little bit of discussion on process and thread.
  • Shared memory and message passing. How does it work? Advantage of one over other.
  • Mirror a BST. initially I swapped the data but later he asked me to do using pointer swapping.
  • Puzzle on probability
  • Many other questions which I don’t remember :grinning:

一天后收到 HR 电话说 there will be one more round called director round.

第四轮 (Director round)

Brief introduction of the work that I am doing in the company and my role in it.

  • WAP to convert decimal number to binary number. After this, he asked me to review my code and consider optimizations, corner cases if any and what comments will you give if you are reviewing this code. In the end, I used some bit operations to make things faster. Like instead of n/2, n>>1 and stuffs like that.
  • He asked me my favorite subject. I said operating systems. The discussion went on around shared library, static library, virtual memory, paging, copy-sharing, message passing, etc os concepts.
  • In the end, he asked me to provide the approach to compare two files which has 10^9 lines in an efficient way and return the lines that are common in both. The discussion went for around 40 to 45 minutes. This is one of the best discussion I had.
    Approaches discussed were mostly on hashing and sorting.
    Constraints: Single processor machine
    Verdict: Selected :grinning:

我在 加州SanJose 面的

第⼀轮:给⽤户进出⽹站的时间[start,end], 找出同时在线最多的⼈数
第⼆轮:整数数组有正有负,找出最⼤乘积⼦数组。第⼆题:旋转矩阵
第三轮:输⼊是⼀个连续⽐特流,输出⼀个⽐特流,1表示输⼊的⽐特流代表的数字能被5整除,否则0
第四轮:找两个已排序数列合并和的median。问了GC,Adapter pattern并举例
第五轮:Director 询问做过的项⽬,⽤过的框架,BQ等等