Goldman Sachs Internship Interview Experience
This is about Goldman Sachs experience when it came on campus
CODING ROUND (Comprised of 5 sections):
Section 1: 2 Simple coding questions
- Determine whether the right half of the given string can be rearranged to form a palindrome. It’s quite similar to Check if characters of a given string can be rearranged to form a palindrome.
- You are given a binary tree and each node has some value assigned to it. Find all such nodes that have even subtree sum and odd subtree sum on its two children.
If a node has only one child or zero child then it will not be good. I could not find any relevant link for it but it was more of less like computing subtree sum of a given node.
Section 2: 8 Aptitude questions
- Permutation and combinations
- Normal mental ability types and many more.
Section 3: 7 Computer science-related questions
Section 4: 1 coding question
- You will be given a graph. There are ‘n’ types of flowers. Each node has a flower of a particular type. Also, each edge has a weight. Now you have to go from starting node till the ending node and you need to collect at least one flower of each type. Find the shortest path to achieve the given task.
The above question might not seem that tough to few people, but what was more terrifying is the way in which the input was provided. Mostly input was given in form of text and needed to be converted to integer for building a graph.
Section 5: 2 essay type questions(to be answered in less than 200 words)
- Suppose your partner in a project has some important work to do and will not be able to contribute to a team project that has to be submitted in the next few days. What would you do?
- This question was something related to a project. I am not able to remember exactly what this was, but surely nothing to worry about.
Around 21 were shortlisted for interviews.
- Introduction about myself and then I was asked about the project(briefly).
- Two coding questions.
Quite easy. Around 10 were promoted to the next round.
Personal Interview(#002): The interviewer started with “Give me a technical brief of your project”. I could not answer this one satisfactorily. And finally seeing me struggling to understand the question itself the interviewer moved to coding question.
- Given a running stream of integers finds the most recently used k integers in the array. An example would clear up the stuff. Answer [5, 1, 4, 2].
Array = [1, 3, 2, 4, 2, 1, 4, 1, 5] and k = 4
I did it using a map data structure in O(nlogn) time complexity, then the interviewer asked me about Rest APIs which i had no idea about.
Around 4 were promoted to the next round.
Personal Interview(#003): This was quite a long interview, I was tested in every field.
- I was asked to explain all the four major topics under oops. Inheritance, Polymorphism, Abstractions, Encapsulation. All with some real-life examples.
- Wanted me to implement an ATM machine class with deposit, debit, check member functions.
- Neither had I studied it in much detail nor was it covered under our course, so I could find an escape through this one.
- Although the interviewer was a kind-hearted and asked me to tell whatever I knew about DBMS.
- Suppose you have a snail that can climb 3 meters per hour, but at the end of an hour, it slides down by 2 meters. How much time would it take for it to climb a height of 30 meters? (28 hours).
- Suppose you visit a village that has 100 people living there. You talk to each one of them, and they say a statement to you.(50 true and 50 false).
1st one says at least 1 person in this village is a liar. 2nd one says at least 2 persons in this village is a liar. 3rd one says at least 3 persons in this village is a liar. 98th one says at least 98 persons in this village is a liar. 99th one says at least 99 persons in this village is a liar. 100th one says at least 100 persons in this village is a liar. Find the number of people speaking truth and lie?
Here it concluded with total of 3 people getting selected.