Qualcomm
200+ Interview Questions and Answers
Q101. What is RTOS and how does it differ from OS?
RTOS stands for Real-Time Operating System. It is designed to handle time-sensitive tasks and provide deterministic behavior.
RTOS is optimized for real-time applications that require precise timing and responsiveness.
Unlike general-purpose operating systems, RTOS provides deterministic behavior, meaning tasks are guaranteed to be completed within a specific time frame.
RTOS typically uses priority-based scheduling algorithms to ensure critical tasks are executed on time.
Exampl...read more
Q102. how function pointers are shared across different processes? using which iPCs?
Function pointers can be shared across processes using inter-process communication mechanisms like shared memory, pipes, sockets, etc.
Function pointers can be stored in shared memory regions that are accessible by multiple processes.
Processes can communicate with each other using pipes or sockets and pass function pointers as arguments.
Remote Procedure Call (RPC) mechanisms can also be used to share function pointers across processes.
Message Passing Interface (MPI) is another...read more
Q103. Pdf of sum and max of two iid uniform rvs in the range 0 to 1
Pdf of sum and max of two iid uniform rvs in the range 0 to 1
The sum of two uniform random variables is a triangular distribution
The maximum of two uniform random variables is also a uniform distribution
The joint pdf can be derived using convolution and differentiation
The resulting pdf will have piecewise functions
Q104. Draw and talk about a basic SRAM cell
An SRAM cell is a type of memory cell that stores a single bit of data using two cross-coupled inverters.
Consists of two inverters connected in a feedback loop
Has two stable states, representing 0 and 1
Uses two access transistors to read and write data
Commonly used in cache memory and microprocessors
Q105. How do you demodulate a QAM signal?
Demodulating a QAM signal involves separating the amplitude and phase components to recover the original data.
QAM signals combine amplitude and phase modulation
Demodulation involves separating the amplitude and phase components
Techniques like coherent demodulation and quadrature demodulation are used
Coherent demodulation uses a local oscillator to recover the phase component
Quadrature demodulation separates the in-phase and quadrature components
Q106. How would you find the impulse response of a system?
The impulse response of a system can be found by applying a short impulse input and measuring the output.
Apply a short impulse input to the system
Measure the output of the system
Take the Fourier transform of the input and output signals
Divide the output Fourier transform by the input Fourier transform to get the transfer function
Take the inverse Fourier transform of the transfer function to get the impulse response
Q107. Draw Transmitter and Receiver for a communication system.
A transmitter and receiver are essential components of a communication system.
Transmitter converts information into a suitable form for transmission.
Receiver receives the transmitted signal and converts it back into the original form.
Transmitter typically includes a modulator, power amplifier, and antenna.
Receiver typically includes an antenna, demodulator, and audio or video output.
Example: In a radio communication system, the transmitter converts audio signals into radio wa...read more
Q108. delete a node in linked list?
To delete a node in a linked list, we need to adjust the pointers of the previous node and the next node.
Find the node to be deleted
Adjust the pointers of the previous node and the next node
Free the memory of the deleted node
It was very easy as expected. We had a chit chat about Qualcomm flagship SoCs.
Regular questions about technology to work upon, location preference and so on.
Q110. Why wireless channel is modelled as Rayliegh
Rayleigh fading is a statistical model for the effect of a propagation environment on a radio signal.
Rayleigh fading is a common model for wireless channels because it accurately represents the random fluctuations in signal strength caused by multipath propagation.
It assumes that the signal is scattered by many objects in the environment, resulting in a large number of reflected signals arriving at the receiver with different phases and amplitudes.
This randomness is modeled b...read more
Q111. what are the issues in topology ?
Topology deals with the study of properties of space that are preserved under continuous transformations.
Classification of surfaces
Homotopy theory
Fundamental group
Manifolds
Knot theory
Q112. Obtain the Nyquist criterion.
The Nyquist criterion states that in order to accurately sample a signal, the sampling rate must be at least twice the highest frequency component of the signal.
The Nyquist criterion is used in digital signal processing and communication systems.
It ensures that the original signal can be accurately reconstructed from its samples.
The sampling rate should be at least twice the bandwidth of the signal to avoid aliasing.
For example, if a signal has a maximum frequency of 10 kHz, ...read more
Q113. What is Trustzone and what is exception levels?
TrustZone is a security feature in ARM processors that creates secure and non-secure worlds, while exception levels are privilege levels in ARM processors.
TrustZone is a hardware-based security feature in ARM processors that divides the system into two worlds: secure and non-secure.
Secure world runs trusted code and data, while non-secure world runs untrusted code and data.
Exception levels in ARM processors determine the privilege level at which code is executed, ranging from...read more
Q114. Explain coherence time, coherence bandwidth, delay spread and Doppler spread
Coherence time is the time duration over which a signal remains correlated. Coherence bandwidth is the frequency range over which a signal remains correlated. Delay spread is the time difference between the arrival of the first and last multipath components. Doppler spread is the frequency difference between the maximum and minimum Doppler shifts.
Coherence time and coherence bandwidth are important parameters in wireless communication systems.
Delay spread is a measure of the ...read more
Q115. Explain insertion in binary search trees
Insertion in binary search trees involves finding the appropriate position for a new node based on its value.
Start at the root node and compare the value of the new node with the current node.
If the new node's value is less than the current node, move to the left child node.
If the new node's value is greater than the current node, move to the right child node.
Repeat the comparison and movement until reaching a leaf node or a null position.
Insert the new node at the null posit...read more
Q116. How is overlap-add implemented?
Overlap-add is implemented by dividing the input signal into overlapping segments, applying a window function, and adding the segments together.
Overlap-add is a method used in digital signal processing to efficiently convolve long signals with finite impulse response (FIR) filters.
The input signal is divided into overlapping segments, typically with a length equal to the filter length.
A window function, such as the Hamming window, is applied to each segment to reduce spectral...read more
Q117. explain the physical memory and virtual memory
Physical memory refers to the actual RAM installed in a computer, while virtual memory is a memory management technique that uses disk space as an extension of RAM.
Physical memory is the actual hardware component where data is stored temporarily for quick access by the CPU.
Virtual memory is a memory management technique that allows the operating system to use disk space as an extension of physical memory.
Physical memory is faster than virtual memory because it is directly acc...read more
Q118. What is a function pointer and volatile type in c
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 is commonly used in embedded systems programming.
Q119. explain SHA Algorithm?
SHA Algorithm is a cryptographic hash function that takes an input and produces a fixed-size output.
SHA stands for Secure Hash Algorithm.
It is widely used in various security applications and protocols.
SHA-1, SHA-256, SHA-384, and SHA-512 are common variants of SHA.
It generates a unique hash value for each unique input.
The output is a fixed length, regardless of the input size.
SHA is used for data integrity, password hashing, digital signatures, etc.
Q120. Memory Management and mapping in different scenarios.
Memory management involves allocating and deallocating memory efficiently, while mapping involves associating memory addresses with physical locations.
Memory management is crucial for optimizing performance and preventing memory leaks.
Mapping involves translating virtual memory addresses to physical memory locations.
Different scenarios may require different memory management strategies, such as stack allocation vs heap allocation.
Examples include paging in virtual memory syst...read more
Q121. What is perspective distortion? How do you correct it?
Perspective distortion is the distortion that occurs when objects appear differently due to the angle of view. It can be corrected using software or adjusting the camera position.
Perspective distortion happens when objects appear distorted or skewed due to the camera's angle of view.
It is commonly seen in architectural photography, where buildings may appear to lean or converge.
To correct perspective distortion, software tools like Adobe Photoshop or Lightroom can be used to ...read more
Q122. Design Round to desgin traffic signal design
Design a traffic signal system
Identify the number of lanes and directions
Determine the duration of each signal phase
Consider pedestrian crossings and emergency vehicle prioritization
Implement sensors to detect traffic flow
Use machine learning algorithms to optimize signal timing
Q123. Explain relationship between coherence time and subcarrier spacing
Coherence time and subcarrier spacing are inversely proportional.
Coherence time is the time duration over which a wireless channel remains constant.
Subcarrier spacing is the frequency difference between adjacent subcarriers in an OFDM system.
The coherence time and subcarrier spacing are inversely proportional to each other.
If the subcarrier spacing is decreased, the coherence time increases and vice versa.
This relationship is important in designing OFDM systems for wireless c...read more
Q124. x1,x2,x3...xn has fourier transform X (bandwidth Fb) Find the fourier transform of x1,0,x2,0,x3,0
The Fourier transform of x1,0,x2,0,x3,0 is X(f) + X(-f)
The Fourier transform of a shifted signal is the original transform multiplied by a complex exponential
The Fourier transform of x1,0,x2,0,x3,0 is the sum of the Fourier transforms of x1,x2,x3 shifted by 0
The Fourier transform of a real signal is symmetric about the origin
Therefore, the Fourier transform of x1,0,x2,0,x3,0 is X(f) + X(-f)
Q125. Register classes in C, MMU
Register classes in C are used to define new data types. MMU is a hardware component that maps virtual addresses to physical addresses.
Register classes in C are used to define new data types with specific storage classes.
MMU stands for Memory Management Unit and is a hardware component that maps virtual addresses to physical addresses.
The MMU is responsible for managing the translation of virtual addresses to physical addresses, allowing programs to access memory without know...read more
Q126. How do you clock domain cross a signal where source and destination clock can are in the ratio 1:1 , 1:2, 2:1. Same circuit should work for all three.
To clock domain cross a signal with different clock ratios, use a synchronizer circuit with multiple stages.
Implement a synchronizer circuit with multiple flip-flops to synchronize the signal between different clock domains.
Use a gray code or other encoding techniques to handle the different clock ratios.
Ensure proper setup and hold times are met for reliable data transfer.
Consider using FIFOs or handshaking protocols to handle potential data rate mismatches.
Perform thorough ...read more
Q127. Find the length of longest common subsequence in given strings.
The length of the longest common subsequence in given strings is found using dynamic programming.
Use dynamic programming to find the length of the longest common subsequence.
Compare characters of the strings and build a matrix to store the lengths of common subsequences.
Traverse the matrix to find the length of the longest common subsequence.
Q128. what is symbolic link in OS ?
A symbolic link is a file that acts as a pointer to another file or directory.
Symbolic links are similar to shortcuts in Windows.
They allow for easy access to files and directories located in different parts of the file system.
Symbolic links can be created using the 'ln -s' command in Unix-based systems.
They can be identified by the 'l' flag in the output of the 'ls -l' command.
Symbolic links can be used to create a backup of a file or directory without duplicating the data.
Q130. Write a code for scheduling in C
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
Q131. Move the 4 cubes from middle of the screen to left, right, bottom and top. Also, it should keep rotating and stop rotation once it reaches there.
Move rotating cubes to different positions on screen and stop rotation once reached.
Create 4 animations to move each cube to left, right, bottom, and top of the screen
Add rotation animation to each cube
Stop rotation animation once cube reaches the desired position
Q132. What is cramer Rao's bound, explain
Cramer Rao's bound is a lower bound on the variance of any unbiased estimator of a parameter.
It is used in statistical signal processing to determine the accuracy of parameter estimation.
It is based on the Fisher information matrix, which measures the amount of information a random variable carries about a parameter.
The bound is tight when the estimator is efficient, meaning it achieves the minimum variance possible.
It is useful for comparing the performance of different esti...read more
Q133. Write a shell script based on different different scenarios
Shell script to handle different scenarios
Use conditional statements like if-else to handle different scenarios
Utilize loops for repetitive tasks
Implement error handling to address unexpected situations
Q134. Count number of elements in an array in python.
Use len() function to count number of elements in an array in Python.
Use len() function with the array as argument to get the count of elements.
Example: array = ['apple', 'banana', 'cherry'] Count = len(array) # Output: 3
Q135. Explain static const usage with an example .
static const is used to declare constants that are known at compile time and cannot be modified
static const int MAX_SIZE = 100; // declaring a constant integer
static const double PI = 3.14159; // declaring a constant double
static const char* MESSAGE = "Hello, World!"; // declaring a constant string
Q136. Define Architecture to process real-time data .
Architecture to process real-time data involves designing systems that can efficiently collect, process, and analyze data in real-time.
Utilize distributed systems to handle high volumes of data in real-time
Implement stream processing frameworks like Apache Kafka or Apache Flink
Use microservices architecture for scalability and flexibility
Employ in-memory databases for fast data retrieval
Ensure fault tolerance and data consistency in the architecture
Q137. How would I integrate/embed Unity application into Android.
Integrating Unity application into Android involves exporting the Unity project as an Android project and then integrating it with Android Studio.
Export the Unity project as an Android project
Import the project into Android Studio
Modify the Android manifest file to include necessary permissions and settings
Integrate UnityPlayerActivity into the Android application
Build and run the Android application on a device or emulator
Q138. What is android boot up sequence
Android boot up sequence involves several stages including power on, bootloader, kernel initialization, and system initialization.
Power on the device
Bootloader loads the kernel
Kernel initializes the system
System initialization completes the boot up process
Q139. 1. Given offset, find the indices of multi dimensional array 2. Bitwise operations coding 3. Structure padding 4. Code memory storage
Technical questions related to programming concepts and memory management.
To find indices of a multi-dimensional array using offset, divide the offset by the size of each element and use the quotient as the index for the first dimension. Repeat this process for each dimension.
Bitwise operations are used to manipulate individual bits in a binary number. Examples include AND, OR, XOR, and bit shifting.
Structure padding is the insertion of unused bytes into a structure to ensure...read more
Q141. Gaussian mixture, pdf of sum of 2 RV
The question is about calculating the probability density function (pdf) of the sum of two random variables (RV) following a Gaussian mixture distribution.
A Gaussian mixture distribution is a combination of multiple Gaussian distributions.
To calculate the pdf of the sum of two RVs, convolve the pdfs of the individual RVs.
Convolution involves integrating the product of the pdfs over the entire range of possible values.
The resulting pdf will also follow a Gaussian mixture distr...read more
Q142. Code compilation on microcontrollers, Build process, debugging, etc
Code compilation, build process, and debugging are essential for DSP software engineers working on microcontrollers.
Understanding the microcontroller architecture and instruction set is crucial for efficient code compilation.
The build process involves compiling the code, linking it with libraries, and generating a binary file that can be loaded onto the microcontroller.
Debugging tools such as JTAG, SWD, and UART are used to identify and fix errors in the code.
Real-time debugg...read more
Q143. Write a program to print left view of binary tree
Program to print left view of binary tree
Use level order traversal (BFS) to traverse the tree
Keep track of the level of each node and only print the first node at each level
Use a queue to store nodes and their levels
Q144. Detect and remove loop in a single linked list
To detect and remove a loop in a single linked list, we can use Floyd's Cycle Detection Algorithm.
Use two pointers, slow and fast, to detect a loop in the linked list.
Move slow pointer by one step and fast pointer by two steps. If they meet at some point, there is a loop.
To remove the loop, find the start of the loop using Floyd's Algorithm and then remove the loop by breaking the link.
Q145. Clone a linked list with random and next pointer
Cloning a linked list with random and next pointers involves creating a deep copy of the original list while maintaining the connections between nodes.
Create a mapping of original nodes to their corresponding new nodes
Iterate through the original list and create new nodes with the same values
Update the random and next pointers of the new nodes based on the mapping created
Q146. Code to select 3 options and ascending, descending, swapping
Code to select 3 options and perform ascending, descending, and swapping operations.
Create a list of 3 options
Implement sorting algorithms for ascending and descending order
Swap the positions of two options based on user input
Q147. Find the number of parallelograms in an mXn set of parallel lines
Q148. Derive optimal threshold for BPSK detection
Optimal threshold for BPSK detection can be derived using the likelihood ratio test.
The threshold should be set such that the probability of false alarm is equal to the probability of detection.
The threshold can be derived by finding the point where the likelihood ratio crosses a certain threshold value.
The threshold can also be derived by maximizing the signal-to-noise ratio.
Simulation and testing can be done to verify the performance of the threshold.
Q149. what is computer networking?
Computer networking is the practice of connecting devices together to share resources and information.
It involves the use of hardware and software to create and manage networks
Networking protocols such as TCP/IP are used to facilitate communication between devices
Examples of computer networks include LANs, WANs, and the internet
Networking allows for sharing of resources such as printers and files
Security measures such as firewalls and encryption are used to protect networks a...read more
Q150. Example of linear time varient system(wireless comm channel)
A wireless communication channel is an example of a linear time variant system.
Wireless communication channels experience time-varying fading due to changes in the environment.
The channel impulse response changes over time, making it a linear time variant system.
Examples of wireless communication channels include Wi-Fi, cellular networks, and satellite communication.
The channel can be modeled as a linear time variant system using techniques such as channel estimation and equa...read more
Q151. What is volatile keyword
Volatile keyword in Java is used to indicate that a variable's value will be modified by multiple threads.
Volatile keyword ensures visibility of changes made by one thread to other threads.
It prevents compiler optimizations that could reorder code and cause unexpected behavior in multi-threaded environments.
Volatile keyword is used for variables accessed by multiple threads without synchronization.
Example: 'volatile int count = 0;'
Q152. What is STRIDE in Cybersecurity?
STRIDE is a model used in cybersecurity to identify and categorize different types of security threats.
STRIDE stands for Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, and Elevation of Privilege.
It helps in understanding and addressing potential security risks in software systems.
For example, spoofing involves pretending to be someone else to gain unauthorized access to a system.
Tampering refers to unauthorized modification of data or code.
Elevat...read more
Q153. Write your own memcpy function. Also, take care of the boundary conditions.
Write a custom memcpy function with boundary condition handling.
Use pointers to copy data from source to destination.
Check for NULL pointers and zero length cases.
Use a loop to copy data byte by byte.
Handle overlapping memory regions with caution.
Q154. What is a program, task and threads
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 a task. It represents the smallest unit of execution with...read more
Q155. Use the sampling theorem for unsymmetrical signals and find the nyquist frequency
Q156. Why current flow direction is opposite to the electron flow
The direction of current flow is opposite to the direction of electron flow due to historical convention.
The concept of current flow was developed before the discovery of electrons.
Benjamin Franklin proposed the convention of positive charge carriers, which led to the opposite direction of current flow.
In reality, electrons are negatively charged and flow from the negative terminal to the positive terminal of a power source.
However, the convention of current flow from positiv...read more
Q157. What will variance of sum of two iid random variables
Variance of sum of two iid random variables is the sum of their individual variances.
Variance of sum of two iid random variables is the sum of their individual variances
If X and Y are iid random variables, Var(X+Y) = Var(X) + Var(Y)
For example, if X and Y are both dice rolls, Var(X+Y) = Var(X) + Var(Y) = 35/12
Q158. How to convert string to numbers without predefined functions
Convert string to numbers without predefined functions
Iterate through each character of the string
Subtract the ASCII value of '0' from the character to get the numerical value
Multiply the numerical value by the appropriate power of 10 based on its position in the string
Add the resulting number to a running total
Q159. how do you support backward compatibility whiel designing a system
Backward compatibility can be supported by using versioning, deprecation strategies, and maintaining clear communication with users.
Use versioning to clearly distinguish between different versions of the system
Implement deprecation strategies to phase out old features gradually
Maintain clear communication with users about upcoming changes and provide migration paths
Consider using compatibility layers or adapters to bridge the gap between old and new versions
Perform thorough t...read more
Q160. Merge two arrays in sorted order.
Merge two sorted arrays nums1 and nums2 into nums1 in-place.
Initialize pointers for nums1 and nums2 at the end of their elements
Compare elements pointed by the two pointers and place larger element at end of nums1
Repeat until all elements from nums2 have been merged into nums1
Q161. Difference between union and structure
Union is a data structure that allows storing different data types in the same memory location, while structure is a data structure that allows storing different data types in a single unit.
Union uses the same memory location for all its members, while structure allocates separate memory for each member.
In a union, only one member can be accessed at a time, while in a structure, all members can be accessed simultaneously.
Example: Union can be used to represent a variable that...read more
Q162. What does malloc return?
malloc returns a pointer to a block of memory allocated from the heap.
malloc returns a void pointer (void*)
The returned pointer can be cast to the desired data type
If malloc fails to allocate memory, it returns NULL
Q163. Why not to use malloc?
malloc should be avoided due to potential memory leaks and security vulnerabilities.
malloc does not initialize memory, leading to potential bugs and crashes.
It does not provide any bounds checking, leading to buffer overflows.
Memory allocated with malloc must be explicitly freed with free() to avoid memory leaks.
Using malloc can be less efficient than using stack memory for small allocations.
Alternatives like calloc() and new in C++ provide safer and more convenient memory al...read more
Q164. string compare | string copy repeTED ELEMENT IN ARRAY LINKED LIST
The question is about string comparison, string copying, repeated elements in an array, and linked lists.
String comparison involves comparing two strings to check if they are equal or not.
String copying refers to creating a copy of a string.
Finding repeated elements in an array involves identifying elements that occur more than once.
Linked lists are data structures that consist of nodes linked together.
Q165. Design OFDM system for given scenario
Design an OFDM system for a given scenario.
Determine the bandwidth and carrier frequency
Choose the number of subcarriers and their spacing
Select a suitable cyclic prefix length
Implement modulation scheme and error correction coding
Optimize system performance through simulation and testing
Q166. Explain the working of D flip flop
D flip flop is a digital circuit that stores a single bit of data and is used in sequential logic circuits.
D flip flop has a data input (D), a clock input (CLK), a set input (S), and a reset input (R).
When the clock input is high, the value of D is transferred to the output Q.
When the set input is high, the output Q is set to high.
When the reset input is high, the output Q is reset to low.
D flip flop is used in applications like shift registers, counters, and memory units.
Q167. What is VLSI design cycle ?
VLSI design cycle is the process of creating integrated circuits by going through various stages from design to fabrication.
VLSI design cycle involves stages like specification, design, verification, synthesis, and fabrication.
It starts with defining the requirements and specifications of the integrated circuit.
Design phase includes logic design, circuit design, and physical design.
Verification ensures that the design meets the specified requirements.
Synthesis involves conver...read more
Q168. Detect endianness using C program
Detect endianness using C program
Use a union to create a variable with a known value
Check the value of the first byte to determine endianness
Big endian systems store the most significant byte first
Little endian systems store the least significant byte first
Example: union { int i; char c; } u; u.i = 1; if (u.c == 1) { /* Little endian */ } else { /* Big endian */ }
Q169. What is S-matrix?
S-matrix is a mathematical representation used in RF engineering to describe the relationship between input and output signals of a linear system.
S-matrix is also known as scattering matrix.
It is used to analyze the behavior of RF circuits and systems.
S-matrix elements represent the complex amplitudes of the incident and reflected waves at each port of a network.
S11 parameter represents the reflection coefficient at port 1, S21 represents the forward transmission coefficient ...read more
Q170. Describe the TARA flow
TARA flow is a process used in semiconductor manufacturing to optimize the design and production of integrated circuits.
TARA stands for Test Analysis and Reliability Assessment
It involves analyzing test data to identify potential issues and improve product reliability
The flow includes steps such as failure analysis, root cause identification, and design optimization
TARA flow helps in ensuring the quality and reliability of semiconductor products
Q171. What is linear time invarient systems
Linear time invariant systems are systems whose output is proportional to the input and is not affected by time.
Linear time invariant systems have constant coefficients and do not change over time.
The output of the system is a scaled version of the input signal.
Examples of LTI systems include RC circuits, mass-spring-damper systems, and filters.
LTI systems are important in signal processing and control theory.
They can be analyzed using techniques such as Laplace transforms an...read more
Q172. Write a program to reverse a linked list
Program to reverse a linked list
Create a function to reverse the linked list by changing the next pointers
Use three pointers to keep track of current, previous, and next nodes
Iterate through the list and update the pointers accordingly
Example: 1->2->3->4->5 becomes 5->4->3->2->1 after reversal
Q173. Write a program to rotate a binary tree
Program to rotate a binary tree
Create a function to rotate the binary tree by swapping left and right child nodes
Recursively rotate each subtree of the binary tree
Update the parent nodes to point to the new child nodes after rotation
Q174. Implement search, insert and delete nodes in binary trees.
Implement search, insert, and delete operations in binary trees.
For search operation, start at the root and recursively search left or right subtree based on the value being searched.
For insert operation, start at the root and recursively find the correct position to insert the new node.
For delete operation, find the node to be deleted, handle different cases (no child, one child, two children) accordingly.
Q175. Differentiate between call by value and reference
Call by value passes a copy of the value while call by reference passes a reference to the value.
Call by value creates a new copy of the value being passed, while call by reference passes a reference to the original value.
In call by value, changes made to the parameter inside the function do not affect the original value, while in call by reference, changes made to the parameter inside the function affect the original value.
Call by value is used for simple data types like int...read more
Q176. Find intersection point of two linked list. Optimise your solution.
Find intersection point of two linked lists and optimize solution.
Traverse both lists and find their lengths
Move the head of the longer list to the same distance as the shorter list
Traverse both lists in parallel until they meet at the intersection point
Use hash table to store visited nodes for faster lookup
Use two pointers, one starting from the head of each list, and move them at the same pace until they meet at the intersection point
Q177. what is virtual function?
A virtual function is a function in a base class that is declared using the keyword 'virtual' and can be overridden by a function in a derived class.
Virtual functions allow a derived class to provide a specific implementation of a function that is already defined in a base class.
They enable polymorphism, where a pointer to a base class can be used to call a function in a derived class.
Virtual functions are used in object-oriented programming to achieve runtime polymorphism.
Q178. mention 4 IPCs used in user level process in linux
4 IPCs used in user level process in Linux
Message Queues - allows processes to exchange data through messages
Shared Memory - allows processes to share a portion of memory
Semaphores - used for synchronization between processes
Pipes - allows communication between two related processes
Q179. why qualcomm?
Qualcomm is a leading technology company with a strong focus on innovation and cutting-edge solutions.
Qualcomm is a leader in the mobile technology industry
The company has a strong reputation for innovation and research
Qualcomm's products and solutions are used by millions of people worldwide
The company has a diverse portfolio of products, including processors, modems, and wireless technologies
Qualcomm is committed to sustainability and social responsibility
Q180. Trailing zero problem in factorials
Trailing zero problem in factorials
Trailing zeros in a factorial are the number of zeros at the end of the factorial's decimal representation
The number of trailing zeros is equal to the number of times 10 can be divided from the factorial
To find the number of trailing zeros, divide the number by 5 and add the quotient to the result of dividing the quotient by 5, and so on
For example, the factorial of 10 has 2 trailing zeros, while the factorial of 25 has 6 trailing zeros
Q181. What is your experience with Java Programming?
Q182. Write a program in python for reading data and saving to Excel
A program in Python to read data and save it to Excel.
Import the 'pandas' library to handle data manipulation.
Use the 'read_csv' function to read the data from a CSV file.
Create a DataFrame object to store the data.
Use the 'to_excel' function to save the data to an Excel file.
Q183. Difference between list and tuple
List is mutable, tuple is immutable in Python.
List can be modified after creation, tuple cannot.
List is defined using square brackets [], tuple using parentheses ().
List is used for collections of items that may change, tuple for fixed collections.
Example: list_example = [1, 2, 3], tuple_example = (4, 5, 6)
Q184. Explain OFDM and need of CP
OFDM is a modulation technique that divides a high-speed data stream into multiple subcarriers. CP is added to prevent inter-symbol interference.
OFDM stands for Orthogonal Frequency Division Multiplexing
It is used in high-speed data transmission over wireless and wired networks
OFDM divides the data stream into multiple subcarriers that are orthogonal to each other
CP or Cyclic Prefix is added to each OFDM symbol to prevent inter-symbol interference
CP is a copy of the end of th...read more
Q185. Rotate a LL with given k size
Rotate a linked list with a given k size
Create a function to rotate a linked list by k nodes
Use two pointers to find the kth node from the end and the end node
Adjust the pointers to rotate the linked list accordingly
Q186. Union usage for bit assignments.
Unions in C/C++ can be used for bit assignments by allowing multiple variables to share the same memory location.
Unions allow different data types to be stored in the same memory location, which can be useful for bit manipulation.
By defining a union with multiple variables of different data types, you can access the same memory location using different variable names.
For example, you can use a union to access individual bits of an integer by defining a struct with bit fields ...read more
Q187. Various data filtering techniques.
Various data filtering techniques include sorting, grouping, aggregating, and applying filters based on specific criteria.
Sorting: arranging data in a specific order, such as ascending or descending
Grouping: categorizing data into distinct groups based on common attributes
Aggregating: combining multiple data points into a single value, such as summing or averaging
Filtering: selecting only the data that meets certain criteria, such as date range or value threshold
Q188. how to define generated clocks through edges
Generated clocks through edges are defined by specifying the source clock and the edge on which the generated clock is based.
Specify the source clock for the generated clock
Define the edge (rising/falling) on which the generated clock is based
Use tools like Synopsys Design Compiler to define generated clocks
Q189. Binary Search in Sorted Rotated Array - No Duplicates
Binary search in a sorted rotated array with no duplicates.
Find the pivot point where the array is rotated.
Determine which half of the array to search based on the target value and pivot point.
Perform binary search in the selected half of the array.
Q190. Binary Search in Sorted Rotated Array - Duplicates Present
Binary search in a sorted rotated array with duplicates present.
Perform a modified binary search by checking both ends of the array for duplicates
Handle cases where duplicates are present at the start, end, or middle of the array
Consider cases where the array is rotated multiple times
Q191. what is binder in android?
Binder is a mechanism for inter-process communication in Android.
Binder allows different processes to communicate with each other.
It is used for implementing Android's IPC (Inter-Process Communication) system.
Binder uses a client-server model where the client sends requests to the server and the server responds with the requested data.
It is used for sharing data between different components of an Android application.
Binder is implemented using kernel-level drivers and user-le...read more
Q192. relocation problems ?
Relocation problems can be challenging but can also offer new opportunities.
Adjusting to a new environment can be difficult
Finding new housing and schools can be stressful
Making new friends and building a support system takes time
Exploring a new city can be exciting and offer new experiences
Relocation can offer career advancement and new opportunities
Q193. Circular buffer problems
Circular buffer is a data structure that uses a fixed-size buffer as if it were connected end-to-end.
Circular buffer is also known as a ring buffer or cyclic buffer.
It is often used in computer programming to implement a queue that needs constant time for adding or removing elements.
When the buffer is full, new data overwrites the oldest data in a circular fashion.
Circular buffers are efficient for streaming data applications where the data is continuously produced and consum...read more
Q194. Count set bits using C
Count set bits in a number using C programming language.
Use bitwise AND operation with 1 to check if the rightmost bit is set.
Shift the number to the right by 1 bit each time to check all bits.
Repeat the process until the number becomes 0, counting the set bits each time.
Q195. Different type of fading channels in wireless system
Different types of fading channels in wireless systems include Rayleigh fading, Rician fading, and Nakagami fading.
Rayleigh fading is when there is no line of sight between transmitter and receiver, resulting in random amplitude and phase variations.
Rician fading is a combination of a dominant line of sight signal and scattered signals, leading to a stronger signal with fading effects.
Nakagami fading models the wireless channel as a sum of multiple paths with different fading...read more
Q196. Design a 4:16 decoder using 2:4 decoders
Design a 4:16 decoder using 2:4 decoders
Use two 2:4 decoders to decode the 4 input bits into 16 output bits
Connect the enable input of each 2:4 decoder to the complement of the other decoder's enable input
Connect the outputs of the two 2:4 decoders to form the 16 output bits
Q197. Define workqueues, OS related concepts etc
Workqueues are data structures used in operating systems to manage tasks and prioritize their execution.
Workqueues are used to schedule and manage tasks in an operating system.
They help in prioritizing tasks based on their importance and urgency.
Workqueues are commonly used in kernel programming to handle asynchronous tasks.
Examples of workqueues include the Linux kernel workqueue and Windows kernel workqueue.
Q198. Swap even and odd bits in given number
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
Q199. Temperature of the design you worked for?
The temperature of the design I worked on was optimized to ensure proper functionality and reliability.
The temperature was carefully controlled to prevent overheating and ensure performance.
Thermal analysis was conducted to determine the optimal operating temperature.
Cooling solutions such as heat sinks or fans were implemented to manage heat dissipation.
Examples: The design operated within a temperature range of 0-70 degrees Celsius. Thermal simulations were used to validate...read more
Q200. Find the missing number from the given series.
Missing number in a given series
Check the pattern of the series
Look for any arithmetic or geometric progression
Try to find the difference between consecutive numbers
Use mathematical formulas to solve the problem
More about working at Qualcomm
Top HR Questions asked in null
Interview Process at null
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month