Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
There were total 5 sections. The test was very easy.
Section 1 :
Questions on computer fundamentals were there. It comprised of questions from os, dbms, c etc.
For example: paging, referential integrity, output based on pseudo codes. Finding the distance moved by disk head in CSCAN algorithm in processing some requests.
Section 2 :
This was based on Quantitative aptitude. There were questions based on profit and loss like given SP and profit find CP, averages, HCF LCM, finding unit digits etc.
Section 3 :
This section was to test your English. Few questions asked the synonyms and antonyms of a given word. There were questions with fill in the blanks and you need to select the correct option, questions where some part was italicized and you need to replace it with some other phrase preserving the meaning of the word. Comprehensions were given and you need to give the answers.
Section 4 :
This was based on logical ability. Questions were based on data sufficiency, blood relations, coding and decoding, direction test, linear arrangement, clocks. This section was easier than aptitude one.
Section 5 :
This was based on programming. Pseudocode based questions were there. Output finding, Stacks, queues based questions were also there.
This was a technical round with questions on DSA, OS , OOPS and DBMS. He first asked me to introduce myself. He asked me are you comfortable with networks, I said no. So he moved on to DBMS. He said have you used any tables in DBMS. I mentioned him about my project so he asked me which tables I used there and what all attributes were there. He was asking questions from my project. He asked me that any other project I have done, besides websites.
What are local, global and static variables?
Global Variables
The variables declared outside any function are called global variables. They are not limited to any function. Any function can access and modify global variables. Global variables are automatically initialized to 0 at the time of declaration. Global variables are generally written before main() function.
Local Variables
The variables which are declared inside the function, compound statement (or block) are called Local variables.
Static variables
A Static variable is able to retain its value between different function calls. The static variable is only initialized once, if it is not initialized, then it is automatically initialized to 0. Here is how to declare a static variable.
Difference between Definition and Declaration
1. A variable or a function can be declared any number of times. A variable or a function can be defined only once
2. Memory will not be allocated during declaration. Memory will be allocated in definition.
3. int f(int);
The above is a function declaration. This declaration is just for informing the compiler that a function named f with return type and argument as int will be used in the function.
int f(int a)
{
return a;
}
The system allocates memory by seeing the above function definition.



Try to solve the problem in 'Single Scan'. ' Single Scan' refers to iterating over the array/list just once or to put it in other words, you will be visiting each element in the array/list just once.
The simple approach is to simply count the number of 0’s, 1’s, and 2’s. Then, place all 0’s at the beginning of the array followed by 1’s and 2's. The time complexity of this approach would be O(n) and space complexity O(1).
However, the approach requires two traversals of the array. The question can also be solved in a single scan of the array by maintaining the correct order of 0’s, 1’s, and 2’s using variables.
We divide the array into four groups using three pointers. Let us name these pointers as low, mid, and high.
1. a[0…low-1] only zeroes
2. a[low..mid-1] only ones
3. a[mid…high] unknown
4. a[high+1..n-1] only twos
Algorithm :
1. Initialise three pointers low = 0, mid = 0 and high = n -1
2. Run a while loop until mid<=high :
2.1 If (a[mid] ==0), then swap the element with the element low and increment low and mid (low++ and mid++).
2.2 If (a[mid] ==1), then increment mid (mid++).
2.3 If (a[mid] ==2), then swap it with an element in high range and decrement high (high--).



In the given linked list, there is a cycle, hence we return true.

Floyd's algorithm can be used to solve this question.
Define two pointers slow and fast. Both point to the head node, fast is twice as fast as slow. There will be no cycle if it reaches the end. Otherwise, it will eventually catch up to the slow pointer somewhere in the cycle.
Let X be the distance from the first node to the node where the cycle begins, and let X+Y be the distance the slow pointer travels. To catch up, the fast pointer must travel 2X + 2Y. L is the cycle size. The total distance that the fast pointer has travelled over the slow pointer at the meeting point is what we call the full cycle.
X+Y+L = 2X+2Y
L=X+Y
Based on our calculation, slow pointer had already traveled one full cycle when it met fast pointer, and since it had originally travelled A before the cycle began, it had to travel A to reach the cycle's beginning!
After the two pointers meet, fast pointer can be made to point to head. And both slow and fast pointers are moved till they meet at a node. The node at which both the pointers meet is the beginning of the loop.
Pseudocode :
detectCycle(Node *head)
{
Node *slow=head,*fast=head;
while(slow!=NULL && fast!=NULL && fast->next!=NULL)
{
slow = slow->next;
fast = fast->next->next;
if(slow==fast)
{
fast = head;
while(slow!=fast)
{
slow = slow->next;
fast=fast->next;
}
return slow;
}
}
return NULL;
}What are the real life examples of non deterministic automata?
Nondeterminism means a process that can have more than one result even when its input is fixed. In the real world, we often view things as non-deterministic because there are inputs that we cannot control.
for eg. If you throw a coin with the same motion and strength, it is unlikely to get the same result (Heads or Tails) every time.
Talking about real life examples of Non-Deterministic Automata; games such as Tic Tac Toe, Ludo, Playing Cards etc. all follow NDA approach in some or the other manner.
HR round with typical behavioral problems.
1. She started with asking me to introduce myself.
2. Then she asked me do you like to work on a specific technology, mobile applications and all?
3. Then she asked me about my project which I explained to her from the scratch by giving examples.
4. Then she asked me about whether I am comfortable in testing,
5. She asked me if I have any problem with the bond and about job locations?
Tip 1 : The cross questioning can go intense some time, think before you speak.
Tip 2 : Be open minded and answer whatever you are thinking, in these rounds I feel it is important to have opinion.
Tip 3 : Context of questions can be switched, pay attention to the details. It is okay to ask questions in these round, like what are the projects currently the company is investing, which team you are mentoring. How all is the work environment etc.

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