Filter interviews by
I applied via Naukri.com and was interviewed before May 2022. There were 2 interview rounds.
Virtual function is a function in C++ that can be overridden in a derived class.
Virtual functions are declared in a base class and defined in a derived class.
They allow polymorphism, where a derived class object can be treated as a base class object.
The virtual keyword is used to declare a function as virtual.
Example: virtual void display() = 0; // pure virtual function
Example: virtual void display() { cout << 'Base cl
A constructor is a special method that is used to initialize objects of a class.
Constructors have the same name as the class they belong to.
They are called automatically when an object of the class is created.
They can be used to set default values for object properties.
Constructors can be overloaded to accept different parameters.
Example: public class Car { public Car() { // constructor code here } }
A destructor is a member function of a class that is responsible for destroying objects of that class.
Destructors have the same name as the class preceded by a tilde (~).
They are called automatically when an object is destroyed or goes out of scope.
They are used to release resources allocated by the object during its lifetime.
Example: ~MyClass() { delete[] myArray; }
Destructors cannot be overloaded or inherited.
Friend class is a class that has access to the private and protected members of another class.
Friend class is declared using the 'friend' keyword.
It allows the friend class to access the private and protected members of the class it is friends with.
Friendship is not mutual, meaning the friend class does not grant access to its own private and protected members.
Friend functions can also be declared to have access to pri...
Top trending discussions
I appeared for an interview in Feb 2025, where I was asked the following questions.
Building chatbots for diverse users involves understanding their needs, preferences, and contexts to enhance user experience.
Identify user personas: Understand different user types (e.g., tech-savvy vs. non-tech-savvy) to tailor interactions.
Utilize natural language processing: Implement NLP to understand and respond to user queries in a conversational manner.
Incorporate user feedback: Regularly collect and analyze use...
I applied via Naukri.com and was interviewed before Dec 2020. There were 3 interview rounds.
posted on 11 Apr 2021
I applied via LinkedIn and was interviewed in Mar 2021. There was 1 interview round.
Blocking statements halt program execution until the statement is complete, while nonblocking statements allow the program to continue executing while waiting for the statement to complete.
Blocking statements can cause the program to hang or become unresponsive if the statement takes a long time to complete.
Nonblocking statements are often used in asynchronous programming to allow multiple tasks to be executed simultan...
posted on 16 Sep 2021
I appeared for an interview before Sep 2020.
Round duration - 30 minutes
Round difficulty - Easy
To search for a node in a linked list, iterate through the list and compare each node's value with the target value.
Start at the head of the linked list
Iterate through each node by following the 'next' pointer
Compare the value of each node with the target value
Return the node if found, otherwise return null
To detect a loop in a linked list, we can use Floyd's Cycle Detection Algorithm.
Initialize two pointers, slow and fast, at the head of the linked list.
Move slow pointer by one step and fast pointer by two steps.
If there is a loop, the two pointers will eventually meet.
Alternatively, we can use a hash set to store visited nodes and check for duplicates.
Implement a stack using a singly linked list
Create a Node class with data and next pointer
Create a Stack class with top pointer pointing to the top of the stack
Implement push, pop, and peek operations by manipulating the linked list
Example: Node class - Node { int data; Node next; }
Round duration - 40 minutes
Round difficulty - Easy
The top view of a binary tree shows the nodes visible from the top when looking down from the root node.
The top view of a binary tree is the set of nodes visible from the top when looking down from the root node.
Nodes at the same horizontal distance from the root are considered at the same level in the top view.
If multiple nodes are at the same horizontal distance, only the topmost node at that level is included in the...
Deleting a node from a linked list involves updating pointers to maintain the list's integrity.
Identify the node to be deleted by traversing the list
Update the previous node's next pointer to skip the node to be deleted
Free the memory allocated to the node to be deleted
Do practice a lot of questions on linked list and stacks as these are two most important data structures asked in the interview. Also, try to implement it yourself without seeing the solution. Also prepare for Computer Science subjects like Operating System, Database Management System, Computer Networks, etc. I prepared them through Coding Ninjas notes which were simpler and easy to understand.
Application resume tips for other job seekersKeep your resume short and up to mark and check spellings before submitting it for the interview process.
Final outcome of the interviewSelectedI appeared for an interview in Aug 2017.
I lack experience in a specific technology required for the role.
I may not have experience with a specific programming language or framework mentioned in the job description.
I may not have worked on projects similar to what your company is working on.
I may not have experience with certain tools or technologies that are crucial for the role.
posted on 7 May 2017
I appeared for an interview in Feb 2017.
malloc is a function in C that dynamically allocates memory on the heap. It is used to allocate memory for variables or data structures.
malloc is used in C programming language.
It is used to allocate memory on the heap.
malloc is different from 'new' in C++ as it does not call constructors for objects.
C++ is a general-purpose programming language while Objective C is a superset of C used for iOS and macOS development.
C++ is widely used for developing applications, games, and system software.
Objective C is mainly used for iOS and macOS development.
C++ supports both procedural and object-oriented programming paradigms.
Objective C is an object-oriented language with dynamic runtime features.
C++ has a larger community a...
Class container is a class that holds objects of other classes, while class composition is a way to combine multiple classes to create a new class.
Class container holds objects of other classes, acting as a collection or container.
Class composition combines multiple classes to create a new class with its own behavior and attributes.
In class container, the objects are typically stored in a data structure like an array o...
Divide the horses into groups of 5 and race them. Take the top 2 from each race and race them again. Finally, race the top 2 horses to determine the top 3.
Divide the horses into 3 groups of 5 and race them.
Take the top 2 horses from each race and race them again.
Finally, race the top 2 horses to determine the top 3.
Developing a real-time data processing system for a high-traffic e-commerce website
Implemented a distributed system architecture to handle large volumes of data
Optimized algorithms for efficient data processing and storage
Utilized caching mechanisms to improve system performance
Worked closely with cross-functional teams to troubleshoot and resolve issues
Example: Successfully reduced data processing time by 50% by imple
Seeking new challenges and opportunities for growth.
Looking for a more challenging role to further develop my skills
Interested in exploring new technologies and industries
Seeking better career advancement opportunities
Want to work in a more collaborative team environment
The width of a tree is the maximum number of nodes at any level in the tree.
To calculate the width of a tree, we can perform a level order traversal and keep track of the maximum number of nodes at any level.
We can use a queue data structure to perform the level order traversal.
At each level, we count the number of nodes in the queue and update the maximum width if necessary.
I appeared for an interview in Aug 2017.
I appeared for an interview in Dec 2016.
I appeared for an interview in Sep 2016.
Code for scheduling in C
Define a struct for the task with fields like start time, end time, priority, etc.
Create an array of tasks and sort them based on priority and start time
Implement a scheduling algorithm like Round Robin or Priority Scheduling
Use system calls like fork() and exec() to create and execute processes
Implement synchronization mechanisms like semaphores or mutexes to avoid race conditions
based on 1 interview
Interview experience
based on 5 reviews
Rating in categories
Software Engineer
341
salaries
| ₹10.3 L/yr - ₹42 L/yr |
SOC Design Engineer
225
salaries
| ₹10.5 L/yr - ₹36 L/yr |
System Validation Engineer
188
salaries
| ₹12.3 L/yr - ₹44.2 L/yr |
Design Engineer
184
salaries
| ₹11.1 L/yr - ₹45.3 L/yr |
Physical Design Engineer
157
salaries
| ₹11.1 L/yr - ₹30 L/yr |
Qualcomm
Nvidia
Microsoft Corporation
Tata Electronics