Tip 1: Find your balance between GPA, DSA, and Projects based on what you are good at
Tip 2: If competitive coding is not your thing, pick up some vast DSA sheets and try doing it twice. Do interviewbit
Tip 3: Work on your interview-giving skills, your confidence, English, and how you present solutions carry a lot more weight than credit.
Tip 1 Google for good resume keywords and include them.
Tip 2:Microsoft technologies as skills in a resume do count. Like powerbi, C#, .net
The coding round was early morning. There were 2 questions and they were relatively easy.



Given an array arr[] of size N and a number K, where K is smaller than the size of the array. Find the K’th smallest element in the given array. Given that all array elements are distinct.
Examples:
Input: arr[] = {7, 10, 4, 3, 20, 15}, K = 3
Output: 7
Input: arr[] = {7, 10, 4, 3, 20, 15}, K = 4
Output: 10
Max heap, keep only K elements in the heap and remove the largest element when the heap size exceeds K. In the end, return the largest element of the heap



Given a string str, the task is to find the longest substring which is a palindrome.
Solved using DP. dp[][] stores status of substring str[i . . . j]. If str[i..j] is a palindrome then it equals the length of it else it includes 0. If str[ij] status is known, to find the status of str[i-1...j+1] we just have to compare i-1 and j+1 characters.
Interview was early morning. It was mostly focused on my Projects and my internship experience. I was asked a few OOPs question and was asked to perform quicksort.
What is the difference between overloading and overriding? (Link)
Overloading is when two or more methods with the same name but different parameters occur. It is solved during compile-time.
Overriding allows subclasses to have a specific implementation of a method already provided by its parent class. Solved during runtime



Let the array = [ 4, 2, 1, 5, 3 ]
Let pivot to be the rightmost number.

I performed quicksort as mentioned in GFG as this is Microsoft's favorite question and I had memorized it properly.
It was in the afternoon after round 1. The interviewer was a senior person this time and I expected decent DSA Questions.



Given the root of a Directed graph, The task is to check whether the graph contains a cycle or not.
Step 1: I wanted to explain the most basic solution to this with DFS but I had a better solution in mind. Explaining this solution to find the back edge in a few minutes I moved on to the next approach
Step 2: I explained Kahn's topological sort solution. Ensure that all elements are removed and no node is remaining with indegree > 0.
The interviewer was happy with this.
Explain the differences between a kernel and a user-level process. (Link)
The kernel is the core component of an operating system, responsible for interacting directly with the hardware and managing resources. User-level processes, on the other hand, are applications running in user space, which rely on the kernel for system services.
How does a context switch work, and why is it essential?
A context switch is the process of saving the current state of a process or thread and loading the state of another process or thread to allow multitasking. It is essential to allow the illusion of concurrent execution.
HR or culture fit round was early in the morning. The interviewer was very calm and sort of portrayed it like I would already pass which boosted my confidence and helped me express myself better throughout the interview.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
How do you remove whitespace from the start of a string?