Filter interviews by
Clear (1)
I applied via Naukri.com and was interviewed in Nov 2024. There was 1 interview round.
Program to find greatest element in a window of size 3
Iterate through the list and maintain a window of size 3
Find the maximum element in each window and store it in a separate list
Return the list of maximum elements
Creating a dataframe from multiple lists using PySpark code.
Import necessary libraries like pyspark.sql.
Create lists of data.
Create a SparkSession.
Convert lists to RDDs and then to a DataFrame.
Display the DataFrame.
Top trending discussions
I was interviewed in Dec 2016.
I had a great stay at IIT Roorkee and spent my time exploring various opportunities and learning new skills.
I was actively involved in various technical clubs and societies on campus
I participated in coding competitions and hackathons
I also took part in organizing technical events and workshops
Apart from academics, I enjoyed playing sports and exploring the scenic campus
Overall, my stay at IIT Roorkee was a fulfilling
Operating system uses memory protection to prevent modification of const variables like const int i=5;
Operating system marks the memory page containing i as read-only
Any attempt to modify i will result in a segmentation fault
Compiler may optimize code by replacing i with its value at compile time
Explanation of memory layout in main memory of computer system.
Main memory is divided into four segments: stack, heap, data, and code.
Stack stores local variables and function calls.
Heap stores dynamically allocated memory.
Data stores global and static variables.
Code stores the program instructions.
Example: int x; //stored in data segment, int *p = new int; //stored in heap segment
Two methods to allocate memory in C are malloc and calloc. Malloc allocates memory block of given size while calloc initializes the allocated memory block to zero.
Malloc allocates memory block of given size while calloc initializes the allocated memory block to zero.
Malloc returns a pointer to the first byte of allocated memory block while calloc returns a pointer to the first byte of initialized memory block.
Malloc is...
new() is an operator in C++ used for dynamic memory allocation.
new() returns a pointer to the allocated memory.
It can be used to allocate memory for primitive data types, arrays, and objects.
Memory allocated using new() must be deallocated using delete operator.
Example: int *ptr = new int;
Example: int *arr = new int[10];
Example: MyClass *obj = new MyClass();
malloc and new are used to allocate memory dynamically. Malloc is faster but new is safer.
malloc is a C function while new is a C++ operator
malloc only allocates memory while new also initializes the memory
new throws an exception if allocation fails while malloc returns NULL
malloc is faster because it does not involve constructor calls
new is safer because it ensures type safety and prevents memory leaks
extern and static are storage classes in C programming language.
extern is used to declare a variable or function that is defined in another file or module.
static is used to declare a variable or function that is local to a file or module.
Example of extern: extern int count; //declares count variable defined in another file.
Example of static: static int count = 0; //declares count variable local to the file.
The two statements are equivalent and declare a pointer to a constant integer.
Both statements declare a pointer to an integer that cannot be modified through the pointer.
The 'const' keyword can be placed before or after the 'int' keyword.
The pointer itself can still be modified to point to a different integer.
Example: const int *p; and int const *p; both declare a pointer to a constant integer.
Cannot modify value pointed by p, but can change the address it points to.
p is a pointer to a constant integer with value 5
a) is valid as p can point to a non-constant integer
b) is invalid as *p is a constant and cannot be modified
Self referential structure is a structure that contains a pointer to the same type of structure.
It allows a structure to reference itself within its own definition.
It is commonly used in linked lists, trees, and graphs.
Example: struct Node { int data; struct Node *next; };
Here, the Node structure contains a pointer to another Node structure.
Structure and union are data structures in C language. Union stores only one value at a time while structure stores multiple values.
Structure is used to store different data types while union is used to store only one data type at a time.
Structure allocates memory for all its members while union allocates memory for only the largest member.
Structure is used when we want to store multiple values of different data types ...
Structure byte padding is the insertion of unused bytes between structure members to align them in memory.
Padding is added to ensure that each member of a structure is aligned on a memory boundary that is a multiple of its size.
The amount of padding added depends on the size and alignment requirements of the members.
Padding can affect the size of a structure and the performance of code that uses it.
For example, a struc...
To check if a linked list is circular, we can use Floyd's cycle-finding algorithm.
Floyd's cycle-finding algorithm uses two pointers, one moving at twice the speed of the other.
If the linked list is circular, the fast pointer will eventually catch up to the slow pointer.
If the linked list is not circular, the fast pointer will reach the end of the list and the algorithm will terminate.
Windows is a proprietary operating system developed by Microsoft.
Windows is a graphical user interface (GUI) based operating system.
It is designed to run on personal computers, servers, and mobile devices.
Windows has different versions such as Windows 10, Windows 8, Windows 7, etc.
It supports a wide range of software applications and hardware devices.
Windows is known for its ease of use and user-friendly interface.
UNIX is an operating system developed in the 1970s, while LINUX is a free and open-source operating system based on UNIX.
UNIX is proprietary, while LINUX is open-source
UNIX is older and has a longer history, while LINUX is a newer development
UNIX is more stable and reliable, while LINUX is more customizable and flexible
UNIX has a more limited user base, while LINUX has a larger and more active community
Examples of UNIX...
A real-time operating system is an OS that processes data and events as they occur, without delay.
Real-time operating systems are used in applications that require immediate response, such as aviation, medical equipment, and industrial control systems.
They prioritize tasks based on their urgency and importance, and can handle multiple tasks simultaneously.
Examples of real-time operating systems include VxWorks, QNX, an
There are 6 types of CPU scheduling: FCFS, SJF, SRTF, Priority, Round Robin, and Multilevel Queue. Each has its own advantages and disadvantages.
FCFS (First-Come-First-Serve) - processes are executed in the order they arrive
SJF (Shortest-Job-First) - shortest job is executed first
SRTF (Shortest-Remaining-Time-First) - preemptive version of SJF
Priority - processes with higher priority are executed first
Round Robin - eac...
No, there is no ideal CPU scheduling possible.
CPU scheduling is a complex problem with many variables.
Different scheduling algorithms are suited for different scenarios.
The ideal scheduling algorithm would depend on the specific system and workload.
For example, a real-time system would require a different scheduling algorithm than a batch processing system.
To set process priority in Windows and Linux, use task manager and nice command respectively.
In Windows, open task manager, right-click on the process and select 'Set Priority'
In Linux, use the 'nice' command followed by the process name or ID and the priority level (values range from -20 to 19)
Higher priority levels mean the process will get more CPU time
Examples: 'nice -n 10 firefox' sets Firefox priority to 10 in Li...
The priority of a mobile application depends on the business goals and user needs.
The priority of a mobile application can vary depending on the business goals and user needs.
For example, a mobile banking app may have a higher priority than a social media app for a bank.
On the other hand, a social media app may have a higher priority for a media company.
The priority can also depend on the target audience and the market...
based on 1 interview
Interview experience
Senior Software Engineer
1.7k
salaries
| ₹0 L/yr - ₹0 L/yr |
Technical Lead
1.5k
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer
1.3k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Engineer
931
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Product Engineer
904
salaries
| ₹0 L/yr - ₹0 L/yr |
Bose
Jbl
Sennheiser
Sony