i
Synopsys
Filter interviews by
CMOS diagram of NAND gate is a combination of NMOS and PMOS transistors.
CMOS NAND gate consists of a series connection of NMOS transistors and a parallel connection of PMOS transistors.
NMOS transistors are used for the pull-down network while PMOS transistors are used for the pull-up network.
When both inputs are high, the NMOS transistors conduct and the output is pulled low.
When either input is low, the corresponding ...
I applied via LinkedIn and was interviewed in Feb 2022. There were 6 interview rounds.
Aptitude, Coding (Unix&c and Verilog), digital electronics
I was interviewed in Jan 2022.
A MUX is used in an IC to select one of several input signals and pass it to the output.
MUX stands for Multiplexer
It is a digital circuit that selects one of several input signals and forwards the selected input to the output
It is used in ICs for data routing, signal switching, and data selection
Examples include selecting between different memory banks or selecting between different input sources in a video switcher
Top trending discussions
I applied via Referral and was interviewed in Jul 2023. There were 3 interview rounds.
Easy bitwise operation and pattern printing questions.
I applied via Approached by Company and was interviewed in May 2022. There were 5 interview rounds.
I applied via Referral and was interviewed before Dec 2020. There were 3 interview rounds.
I applied via Company Website and was interviewed in Jan 2024. There were 2 interview rounds.
posted on 4 Oct 2024
I applied via Referral and was interviewed in Sep 2024. There were 3 interview rounds.
Three DSA questions one on likedlist one on BST and one on maps
Smart pointers in C++ provide automatic memory management and help prevent memory leaks.
Smart pointers are objects that manage the memory of a pointer automatically.
They ensure that memory is deallocated when it is no longer needed.
Examples include unique_ptr, shared_ptr, and weak_ptr.
DSA questions on graph and lots of puzzles
To check if a directed graph is cyclic or not
Use Depth First Search (DFS) algorithm to traverse the graph
Maintain a visited set to keep track of visited nodes
Maintain a recursion stack to keep track of nodes in the current DFS traversal
If a node is visited and is already in the recursion stack, then the graph is cyclic
If DFS traversal completes without finding a cycle, then the graph is acyclic
Return a random byte from a stream of bytes with equal probability.
Create a variable to store the count of bytes read
Create a variable to store the current random byte
For each byte read, generate a random number between 0 and the count of bytes read
If the random number is 0, store the current byte as the random byte
Return the random byte
Check if a binary tree is a binary search tree or not.
Traverse the tree in-order and check if the values are in ascending order.
For each node, check if its value is greater than the maximum value of its left subtree and less than the minimum value of its right subtree.
Use recursion to check if all nodes in the tree satisfy the above condition.
Algorithm to find Nth-to-Last element in a singly linked list of unknown length
Traverse the list and maintain two pointers, one at the beginning and one at Nth node from beginning
Move both pointers simultaneously until the second pointer reaches the end of the list
The first pointer will be pointing to the Nth-to-Last element
If N=0, return the last element
Parse the list only once
Print all possible permutations of an array of integers
Use recursion to swap elements and generate permutations
Start with the first element and swap it with each subsequent element
Repeat the process for the remaining elements
Stop when all elements have been swapped with the first element
Print each permutation as it is generated
Design a stack that prints the minimum element pushed in O(1)
Use two stacks, one for storing elements and another for storing minimums
When pushing an element, compare it with the top of minimum stack and push the smaller one
When popping an element, pop from both stacks
To get the minimum element, just return the top of minimum stack
To find the starting point of a loop in a linked list, use Floyd's cycle-finding algorithm.
Use two pointers, one moving at twice the speed of the other.
When they meet, move one pointer to the head of the list and keep the other at the meeting point.
Move both pointers one step at a time until they meet again, which is the starting point of the loop.
To find a number in a matrix where all rows and columns are sorted non-decreasingly. Complexity of the solution.
Use binary search to find the number in each row and column
Start from the top-right corner or bottom-left corner to optimize search
Time complexity: O(m log n) or O(n log m) depending on the starting corner
I applied via Referral and was interviewed before Sep 2020. There was 1 interview round.
based on 1 interview
Interview experience
based on 7 reviews
Rating in categories
R&D Engineer
148
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior R&D Engineer
100
salaries
| ₹0 L/yr - ₹0 L/yr |
Staff Engineer
89
salaries
| ₹0 L/yr - ₹0 L/yr |
Security Consultant
60
salaries
| ₹0 L/yr - ₹0 L/yr |
Applications Engineer
58
salaries
| ₹0 L/yr - ₹0 L/yr |
Cadence Design Systems
Mentor Graphics
Ansys Software Private Limited
Infineon Technologies