NVIDIA interview experience Real time questions & tips from candidates to crack your interview

SDE - 1

NVIDIA
upvote
share-icon
3 rounds | 7 Coding problems

Interview preparation journey

expand-icon
Preparation
Duration: 5 months
Topics: Data Structures, Algorithms, Operating System, Aptitude, OOPS
Tip
Tip

Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.

Application process
Where: Campus
Eligibility: Above 7 CGPA
Resume Tip
Resume tip

Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.

Interview rounds

01
Round
Medium
Coding Test - Pen and paper
Duration60 minutes
Interview date2 Jun 2015
Coding problem0

There were 4 sections with no negative marking but they had sectional cut-off.
Questions on C/C++, Operating Systems, Data Structures and aptitude were asked.

02
Round
Medium
Coding Test - Pen and paper
Duration30 minutes
Interview date2 Jun 2015
Coding problem2

20 people were shortlisted after the first round. 2 coding questions out of 3 were to be solved in this round.

1. First non repeating character

Easy
15m average time
80% success
0/40
Asked in companies
Tech MahindraMathworksFlipkart

Ninja is now bored with numbers and is now playing with characters but hates when he gets repeated characters. Ninja is provided a string, and he wants to return the first unique character in the string.The string will contain characters only from the English alphabet set, i.e., ('A' - 'Z') and ('a' - 'z'). If there is no non-repeating character, print the first character of the string. If there is no non-repeating character, return the first character of the string.

Problem approach

This problem can be solved using the hashing concept. The objective is to run over the string and record how many times each character appears in it in a hash map. Then we run over the string again, this time using the hash map as a reference to see if any of the characters are unique. If the character is unique, return the index.
Time Complexity: O(N) 
The above approach requires two traversals of the string. To solve the question in a single traversal only, along with storing the count of a character store the index a particular character was encountered the first time. So when it comes to finding the first non-repeating character, just scan the hash map, instead of the string and return the character with occurrences as 1 and least index in the string.

Try solving now

2. Total area of overlapping rectangles

Easy
10m average time
90% success
0/40
Asked in companies
MicrosoftSAP LabsOracle

You are given two arbitrary rectangles on a 2-D coordinate plane, which may have an intersecting area. You have to find the net area covered by both the rectangles on the cartesian plane.

explain_image

The orange area depicted in the above figure is the net area covered by both rectangles on the cartesian plane.

Note:

1. For a rectangle, its top left and bottom right coordinates are given.

2. Coordinates of the rectangles are integer values.

3. Edges of the given rectangles will always be parallel to the X and Y coordinate axes of the cartesian plane.

4. It is guaranteed that both the rectangles will have at least a unit area.
Problem approach

As two given points are diagonals of a rectangle. so, x1 < x2, y1 < y2. similarly x3 < x4, y3 < y4. 
so, bottom-left and top-right points of intersection rectangle can be found by using formula.
x5 = max(x1, x3);
y5 = max(y1, y3);
x6 = min(x2, x4);
y6 = min(y2, y4); 
In case of no intersection, x5 and y5 will always exceed x6 and y5 respectively. The other two points of the rectangle can be found by using simple geometry.

Try solving now
03
Round
Easy
Face to Face
Duration60 minutes
Interview date2 Jun 2015
Coding problem5

Technical Interview round with questions on OOPS and OS.

1. OOPS Question

What is Polymorphism in C++?

Problem approach

Polymorphism is defined as the ability to take more than one form. It is a feature that provides a function or an operator with more than one definition. It can be implemented using function overloading, operator overload, function overriding, virtual function.

2. OOPS Question

What is malloc and calloc function?

Problem approach

The functions malloc() and calloc() are library functions that allocate memory dynamically. Dynamic means the memory is allocated during runtime (execution of the program) from the heap segment.

Initialization
malloc() allocates a memory block of given size (in bytes) and returns a pointer to the beginning of the block. malloc() doesn’t initialize the allocated memory. If you try to read from the allocated memory without first initializing it, then you will invoke undefined behavior, which will usually mean the values you read will be garbage.

calloc() allocates the memory and also initializes every byte in the allocated memory to 0. If you try to read the value of the allocated memory without initializing it, you’ll get 0 as it has already been initialized to 0 by calloc().

3. OOPS Question

What is a virtual function?

Problem approach

A C++ virtual function is a member function in the base class that you redefine in a derived class. It is declared using the virtual keyword. It is used to tell the compiler to perform dynamic linkage or late binding on the function. A 'virtual' is a keyword preceding the normal declaration of a function. When the function is made virtual, C++ determines which function is to be invoked at the runtime based on the type of the object pointed by the base class pointer.

4. OS Question

Difference between process and thread

Problem approach

. Process means any program is in execution. Thread means segment of a process.
2. Process takes more time to terminate. Thread takes less time to terminate.
3. Process takes more time for creation. Thread takes less time for creation.
4. Process also takes more time for context switching. Thread takes less time for context switching.
5. Process is less efficient in term of communication. Thread is more efficient in term of communication.
6. Multi programming holds the concepts of multi process. We don’t need multi programs in action for multiple threads because a single process consists of multiple threads.
7. Process is isolated. Threads share memory.

5. OS Question

What is multithreading?

Problem approach

Multithreading is a process of executing multiple threads simultaneously. A thread is a lightweight sub-process, the smallest unit of processing. Multiprocessing and multithreading, both are used to achieve multitasking.
However, we use multithreading than multiprocessing because threads use a shared memory area. They don't allocate separate memory area so saves memory, and context-switching between the threads takes less time than process.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

Which array operation has O(n) worst-case time complexity?

Choose another skill to practice
Similar interview experiences
company logo
SDE - 1
2 rounds | 8 problems
Interviewed by NVIDIA
2021 views
0 comments
0 upvotes
company logo
Processing Executive
2 rounds | 6 problems
Interviewed by NVIDIA
1403 views
0 comments
0 upvotes
company logo
Software Engineer
2 rounds | 2 problems
Interviewed by NVIDIA
3616 views
0 comments
0 upvotes
company logo
SDE - 1
2 rounds | 2 problems
Interviewed by NVIDIA
2637 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
SDE - 1
1 rounds | 2 problems
Interviewed by Tata Consultancy Services (TCS)
0 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 4 problems
Interviewed by Tata Consultancy Services (TCS)
6080 views
0 comments
0 upvotes
company logo
SDE - 1
2 rounds | 3 problems
Interviewed by BNY Mellon
5351 views
3 comments
0 upvotes