Tip 1: Practice every day.
Tip 2: Have at least one good project about which you are confident to discuss.
Tip 3: Don't focus on the quantity of questions, but on the quality. A person with 200 questions can perform better than someone with 500 questions.
Tip 4: Never give up.
Tip 1: Have some good projects on your resume, and make sure you know everything about each project.
Tip 2: Any previous internship experience would look very good when applying to any company.
It was around 8-9 PM in an online test environment. The platform was very good, with very fast compilation.
What is Virtual Memory?
The event took place on Google Meet, approximately between 12 and 1 PM.



If the given linked list is 1 -> 2 -> 3 -> 4 -> 5 -> NULL.
Then rearrange it into 1 -> 5 -> 2 -> 4 -> 3 -> NULL.
So basically the question was to rearrange the linked list nodes alternatively, firstly I tried using Recursion, but later I found out I was doing something wrong, then I told the interviewer that I needed to change my approach and I thought Stack could be used to solve this, in return, he gave me hint that you should go with the stack. I was declaring two pointers that do the same thing so he asked me whether we needed to use both or we could do it with only one, I said we could use any of them and we don't need to create both of them, even one pointer would be fine.



A subsequence is a sequence that can be derived from another sequence by deleting some or no elements without changing the order of the remaining elements
So the problem sounded like a typical DP problem where we need to find the maximum and where we have a choice to include the current number or not, sounded like a variation of 0/1 knapsack. I just needed to track whether earlier I had 2 consecutive elements before my current elements or not, if yes then I can't take that element. But interviewer told me to optimize this as it was less efficient. I couldn't come up with another approach then he told me the problem could be done greedily and explained to me the solution.



Given N = 5,
and ARR[] = {1, 3, 5, 4, 2}
Therefore, we can see that three ninjas with ability 3,4 and 5 will give us the maximum ability and will be called great therefore the output will be 60.
Very less time was remaining so the interviewer gave me this question and told me he wanted an optimized solution i.e. in O(n) time and O(1) space, so basically I told him that we could get the maximum 3 numbers or 1 maximum and 2 minimum, whichever comes greater will be my answer, then he asked me about the implementation, then I told him we can have 3 variables for maximum (highest, second highest, third highest) and 2 for minimum and for every new element we can just update maximum and minimum and the below minimum/maximum (like if I get a number greater than the maximum, I need to first give my third highest the value of second highest, second highest value of highest and update the highest with the current number).
The online round was conducted via Google Meet.
The interview mostly revolved around discussions regarding my projects and the project from my previous internship, as well as some concepts of Operating Systems. Additionally, I was asked about my favorite concept and why it stood out to me. There was also discussion about my favorite app and potential improvements that could be made to it, as well as questions about my hobbies and preferences.
Tip 1: Be confident and don't be anxious, try to maintain a good vibe environment with healthy discussion.
Tip 2: Again good Projects are very important.
Tip 3: The previous intern project should look like you had done something earlier.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
What is recursion?