Filter interviews by
Weak pointer is a type of smart pointer in C++ that does not control the lifetime of the object it points to.
Weak pointers are used to break circular references in shared pointers.
They do not increase the reference count of the object.
They are used in scenarios where the object may be deleted while there are still weak pointers pointing to it.
Yes, I have used Windows API's extensively in my previous projects.
I have used Windows API's for tasks such as creating windows, handling messages, and interacting with system resources.
Examples include using functions like CreateWindow, SendMessage, and ReadFile.
I have also worked with specific Windows API's like Winsock for networking and WinINet for internet-related tasks.
Union in C++ is a data structure that allows storing different data types in the same memory location.
Unions are similar to structures but all members share the same memory location.
Only one member of a union can be accessed at a time.
Unions are useful when you need to store different data types in the same memory space.
Example: union MyUnion { int i; float f; };
Example: MyUnion u; u.i = 10; // Accessing integer m...
I primarily use C++17, but I am familiar with earlier versions as well.
I am comfortable working with features introduced in C++17 such as structured bindings and constexpr if
I have experience with earlier versions like C++11 and C++14
I stay updated with the latest features and improvements in C++ standards
Runtime polymorphism in C++ is achieved through virtual functions, vptr (virtual pointer), and vtable (virtual table).
Runtime polymorphism allows objects of different classes to be treated as objects of a common superclass.
Virtual functions are declared in a base class and overridden in derived classes to achieve polymorphism.
vptr is a pointer that points to the vtable of an object, allowing dynamic binding of vir...
Maximize profit by buying and selling stocks multiple times with given prices.
You can buy and sell stocks multiple times.
Profit is made by buying before selling.
Example: Prices = [7, 1, 5, 3, 6, 4] -> Buy at 1, sell at 5, profit = 4.
You can also buy at 3 and sell at 6 for additional profit.
Total profit = 4 + 3 = 7.
Merge overlapping intervals in a list to create a consolidated list of intervals.
Sort the intervals by their start times.
Iterate through the sorted intervals and compare the current interval with the last merged interval.
If they overlap, merge them by updating the end time of the last merged interval.
If they don't overlap, add the current interval to the merged list.
Example: Given intervals [[1,3],[2,6],[8,10],[15...
dynamic_cast is a C++ operator used for safe downcasting of pointers and references in polymorphic classes.
dynamic_cast is used to safely downcast a pointer or reference from a base class to a derived class.
It can fail if the object being casted is not of the target type, in which case it returns a null pointer for pointers or throws a std::bad_cast exception for references.
Dynamic_cast can only be used with point...
Processes and threads are units of execution in a computer system. Memory is allocated to processes. Mutex and semaphore are synchronization mechanisms. Core refers to a processing unit in a multi-core system. Context switching is the process of switching between different processes or threads.
Processes are independent units of execution with their own memory space and resources.
Threads are lightweight units of ex...
I applied via Naukri.com and was interviewed in Sep 2024. There were 3 interview rounds.
Merge overlapping intervals in a list to create a consolidated list of intervals.
Sort the intervals by their start times.
Iterate through the sorted intervals and compare the current interval with the last merged interval.
If they overlap, merge them by updating the end time of the last merged interval.
If they don't overlap, add the current interval to the merged list.
Example: Given intervals [[1,3],[2,6],[8,10],[15,18]]...
Maximize profit by buying and selling stocks multiple times with given prices.
You can buy and sell stocks multiple times.
Profit is made by buying before selling.
Example: Prices = [7, 1, 5, 3, 6, 4] -> Buy at 1, sell at 5, profit = 4.
You can also buy at 3 and sell at 6 for additional profit.
Total profit = 4 + 3 = 7.
Runtime polymorphism in C++ is achieved through virtual functions, vptr (virtual pointer), and vtable (virtual table).
Runtime polymorphism allows objects of different classes to be treated as objects of a common superclass.
Virtual functions are declared in a base class and overridden in derived classes to achieve polymorphism.
vptr is a pointer that points to the vtable of an object, allowing dynamic binding of virtual ...
I primarily use C++17, but I am familiar with earlier versions as well.
I am comfortable working with features introduced in C++17 such as structured bindings and constexpr if
I have experience with earlier versions like C++11 and C++14
I stay updated with the latest features and improvements in C++ standards
Yes, I have used Windows API's extensively in my previous projects.
I have used Windows API's for tasks such as creating windows, handling messages, and interacting with system resources.
Examples include using functions like CreateWindow, SendMessage, and ReadFile.
I have also worked with specific Windows API's like Winsock for networking and WinINet for internet-related tasks.
dynamic_cast is a C++ operator used for safe downcasting of pointers and references in polymorphic classes.
dynamic_cast is used to safely downcast a pointer or reference from a base class to a derived class.
It can fail if the object being casted is not of the target type, in which case it returns a null pointer for pointers or throws a std::bad_cast exception for references.
Dynamic_cast can only be used with pointers o...
Union in C++ is a data structure that allows storing different data types in the same memory location.
Unions are similar to structures but all members share the same memory location.
Only one member of a union can be accessed at a time.
Unions are useful when you need to store different data types in the same memory space.
Example: union MyUnion { int i; float f; };
Example: MyUnion u; u.i = 10; // Accessing integer member...
Weak pointer is a type of smart pointer in C++ that does not control the lifetime of the object it points to.
Weak pointers are used to break circular references in shared pointers.
They do not increase the reference count of the object.
They are used in scenarios where the object may be deleted while there are still weak pointers pointing to it.
Processes and threads are units of execution in a computer system. Memory is allocated to processes. Mutex and semaphore are synchronization mechanisms. Core refers to a processing unit in a multi-core system. Context switching is the process of switching between different processes or threads.
Processes are independent units of execution with their own memory space and resources.
Threads are lightweight units of executi...
Top trending discussions
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 interviewSelectedposted on 10 May 2015
Locate sum of 2 numbers in a linear array (unsorted and sorted) and their complexities
For unsorted array, use nested loops to compare each element with every other element until the sum is found
For sorted array, use two pointers approach starting from the beginning and end of the array and move them towards each other until the sum is found
Complexity for unsorted array is O(n^2) and for sorted array is O(n)
Pointers are used to manipulate memory addresses and values in C++. Increment/decrement, address of and value at operators are commonly used.
Incrementing a pointer moves it to the next memory location of the same data type
Decrementing a pointer moves it to the previous memory location of the same data type
The address of operator (&) returns the memory address of a variable
The value at operator (*) returns the value sto...
To determine if a point is inside or outside a rectangle, we check if the point's coordinates fall within the rectangle's boundaries.
Check if the point's x-coordinate is greater than the left edge of the rectangle
Check if the point's x-coordinate is less than the right edge of the rectangle
Check if the point's y-coordinate is greater than the top edge of the rectangle
Check if the point's y-coordinate is less than the b...
To find line that divides rectangle into 2 equal halves through a point inside it.
Find the center of the rectangle
Draw a line from the center to the given point
Extend the line to the opposite side of the rectangle
The extended line will divide the rectangle into 2 equal halves
There are multiple combinations of 8-bit and 16-bit signed numbers. How many such combinations are possible?
There are 2^8 (256) possible combinations of 8-bit signed numbers.
There are 2^16 (65,536) possible combinations of 16-bit signed numbers.
To find the total number of combinations, we can add the number of combinations of 8-bit and 16-bit signed numbers.
Therefore, the total number of possible combinations is 256 + ...
Find duplicates in an array of elements in 0(n) time and 0(1) space.
Use the property of inputs to your advantage
Iterate through the array and mark elements as negative
If an element is already negative, it is a duplicate
Return all the negative elements as duplicates
Generate all combinations of digits from an array, allowing and disallowing repetition.
Use recursion or backtracking to generate combinations.
For repetition allowed: e.g., arr={1,2}, combinations are 11, 12, 21, 22.
For repetition not allowed: e.g., arr={1,2,3}, combinations are 123, 132, 213, 231, 312, 321.
Utilize a set to track used digits when repetition is not allowed.
I appeared for an interview before May 2016.
I appeared for an interview in Sep 2016.
I applied via Campus Placement
A program is a set of instructions that tells a computer what to do. A task is a unit of work performed by a program. A thread is a sequence of instructions within a task.
A program is a collection of instructions that are executed by a computer to perform a specific task.
A task is a unit of work that is performed by a program. It can be a specific action or a set of actions.
A thread is a sequence of instructions within...
To delete a node in a linked list, we need to adjust the pointers of the previous and next nodes.
Find the node to be deleted by traversing the linked list
Adjust the pointers of the previous and next nodes to skip the node to be deleted
Free the memory occupied by the node to be deleted
A function pointer is a variable that stores the address of a function. Volatile type is used to declare variables that can be modified by external factors.
Function pointers are used to pass functions as arguments to other functions.
Volatile type is used when a variable's value can be changed unexpectedly by external factors.
Function pointers can be used to implement callbacks or event handling mechanisms.
Volatile type...
Experienced software developer with expertise in Java, Python, and SQL
Proficient in Java, Python, and SQL programming languages
Developed web applications using Java Spring framework
Experience with database management and optimization using SQL
Worked on various software projects in a team environment
Swap even and odd bits in a given number
Create a mask for even bits and odd bits
Shift even bits to right and odd bits to left
Combine even and odd bits using bitwise OR operator
I applied via Referral and was interviewed before Dec 2020. There were 3 interview rounds.
I appeared for an interview before Sep 2020.
Round duration - 45 minutes
Round difficulty - Medium
Its a zoom call interview which lasted for 45 minutes. initially there are two panel members in which one is very targetting at me. They asked me different type of questions like jumping from DSA to project then to python then again java. Its a mixed combo pack type interview. for each and every question they asked me the real time example. The discussion on my project lasted for 15-20 mins.
Given a positive integer N
, compute the total number of '1's in the binary representation of all numbers from 1 to N. Return this count modulo 1e9+7 because the result can...
Count the total number of set bits in the binary representation of numbers from 1 to N modulo 1e9+7.
Use bitwise operations to count the set bits in each number from 1 to N.
Keep track of the total set bits and return the result modulo 1e9+7.
Optimize the solution to handle large values of N efficiently.
Consider using dynamic programming or precomputing values for faster computation.
Round duration - 30 mins
Round difficulty - Easy
This round was a zoom interview. The interview started with my brief introduction. This time the interview was more interested in my hobbies and passions. He asked me what do you do to keep yourself updated with the latest technology trends?
Tip 1 : Do participate in all the coding contests, long challenges held by codechef, codeforces
Tip 2 : Practice all kinds of problems on leetcode, gfg, coding ninjas
Tip 3 : When you are writing a written exam for a particular company, make sure you get to know about the company in detail.
Tip 1 : Make your resume short and sweet(mostly 1 page, max 2 pages) is preferred.
Tip 2 : Make sure your resume is crisp rather than descriptive
Tip 3 : Do not lie on your resume
I appeared for an interview before Oct 2020.
Round duration - 60 minutes
Round difficulty - Medium
This round had 2 coding problems and we had to code it on hackerearth only.
The use of Outside IDE was forbidden.
The timing of test was 12:00 PM to 1:00 PM.
Given a specified number of intervals, where each interval is represented by two integers denoting its boundaries, the task is to merge all overlapping interv...
Merge overlapping intervals and return sorted list of merged intervals.
Iterate through intervals and merge overlapping ones
Sort merged intervals based on starting times
Handle edge cases like empty input or single interval
Use a data structure like list or array to store merged intervals
Given a rotated sorted array ARR
of size 'N' and an integer 'K', determine the index at which 'K' is present in the array.
1. If 'K' is not present...
Given a rotated sorted array, find the index of a given integer 'K'.
Use binary search to find the pivot point where the array is rotated.
Based on the pivot point, perform binary search on the appropriate half of the array to find 'K'.
Handle cases where 'K' is not present in the array by returning -1.
Round duration - 60 minutes
Round difficulty - Medium
This was an Online F2F Technical Round conducted on CodePair : Hackerearth. So, Basically You have to Run and Submit ( Pass All Test cases) in the Interview Round also (Like normal Coding Test) in Hackerearth & along with that You should have to explain your Code and Approach to the Interviewers.
The Interviewers were helpful and didn't hesitate in giving hints.
Timing - 11:00 A.M to 12:00 P.M
In this problem, you have a one-dimensional garden of length 'N'. Each position from 0 to 'N' has a fountain that can provide water to the garden up to a certain range...
Find the minimum number of fountains to activate to water the entire garden.
Iterate through the array to find the coverage of each fountain.
Keep track of the farthest coverage reached by activating fountains.
Activate the fountain that covers the farthest point not yet covered.
Repeat until the entire garden is watered.
Given a directed weighted graph comprised of vertices labeled 1 to N and M edges, where each edge connects two nodes u and v with a weight w representing the distance be...
Bellman Ford algorithm is used to find the shortest path in a graph with negative weights.
Initialize distances from source to all vertices as infinity, and distance to source as 0.
Relax all edges V-1 times to find shortest path.
If any distance is updated in Vth iteration, then there is a negative weight cycle.
Return the distance to destination vertex after V-1 iterations.
Example: For the given graph, shortest path from...
Round duration - 30 minutes
Round difficulty - Easy
This was a Google Meet Video Call. The HR was friendly and asked basic questions.
The timing was 2:00 PM to 2:30 PM.
Tip 1 : Make sure that you are thorough with CS concepts beforehand.
Tip 2 : Even when you are explaining the approach to a question, try to parallelly think about how you would code it.
Tip 3 : Read the previous interview experiences. It would give a fair idea of the kind of questions one should expect.
Tip 4 : Practice atleast 200 questions from coding platforms like CodeZen, LeetCode, Interviewbit as they contain common interview questions.
Tip 1 : Mention atleast 1 project and past work experience as it sets good impression.
Tip 2 : Keep your resume up to date for the role you are applying.
Tip 3 : Try to keep your resume of 1 Page.
Some of the top questions asked at the Broadcom C Developer interview -
based on 1 interview experience
Difficulty level
Duration
Software Engineer
138
salaries
| ₹13.4 L/yr - ₹28.6 L/yr |
Accountant
122
salaries
| ₹1.3 L/yr - ₹4.5 L/yr |
Senior Software Engineer
117
salaries
| ₹16.8 L/yr - ₹30 L/yr |
R&D Engineer
48
salaries
| ₹23 L/yr - ₹52.8 L/yr |
Test Engineer
47
salaries
| ₹3.5 L/yr - ₹8.1 L/yr |
Qualcomm
Intel
Molex
TDK India Private Limited