Tip 1 : Must do previously Asked Interview Questions.
Tip 2 : Prepare OS, DBMS, OOPs, and Computer Networks well.
Tip 3 : Prepare well for one project mentioned in the resume, the interviewer may ask any question related to the project, especially about the networking part of the project.
Tip 1 : Have at least one project on the resume.
Tip 2 : Must mention every skill and certificate in the resume.
Tip 3 : Must have known every strong and intermediate skill mentioned in the resume.
Tip 4 : Do not include technologies/skills that you've not worked on at all. It can blow the interview if the interviewer questions you about it.
This was the first technical round completely based on the data structures and algorithms and computer fundamentals.
Use Map data structure with string keys (single characters of the input string).
Inside the for loop check whether the current character has already appeared. If not, just increase the currMaxLen counter by one. Otherwise, if it has appeared earlier and the difference between their 1-based index values loc - prev_loc is less or equal than the current max substring length, the counter must be updated to only contain the length of the new active substring.
For example, for a string "abcb"
after char "c", currMaxLen equals 3 and the map has content "a":1, "b":2, "c":3
for next and last char "b", the if condition results true (2 && 4 - 2 <= 3) and currMaxLen is set to 2 as the active longest substring is now "cb".
iteration ends after that and the answer is three
function lengthOfLongestSubstring(s: string): number {
const map = new Map();
let maxLen = 0;
let currMaxLen = 0;
for (let i=0; i const loc = i + 1;
const prev_loc = map.get(s[i]);
if (prev_loc && loc - prev_loc <= currMaxLen) {
currMaxLen = loc - prev_loc;
} else {
currMaxLen += 1;
}
map.set(s[i], loc);
maxLen = Math.max(maxLen, currMaxLen);
}
return maxLen;
};
class Solution {
public:
vector spiralOrder(vector>& matrix) {
int m = size(matrix), n = size(matrix[0]), sz = m*n;
vector ans(sz);
int r0 = 0, r1 = m-1, c0 = 0, c1 = n-1, r = 0, c = 0;
for (int i = 0, flag = 0; i < sz; flag = (flag+1) % 4) {
if (flag == 0) {
for (c = c0; c <= c1; c++)
ans[i++] = matrix[r][c];
r0++, c--;
} else if (flag == 1) {
for (r = r0; r <= r1; r++)
ans[i++] = matrix[r][c];
c1--, r--;
} else if (flag == 2) {
for (c = c1; c >= c0; c--)
ans[i++] = matrix[r][c];
r1--, c++;
} else if (flag == 3) {
for (r = r1; r >= r0; r--)
ans[i++] = matrix[r][c];
c0++, r++;
}
}
return ans;
}
};
This was 2nd technical round taken by the senior software engineer at HashedIn. This round was based on the system design of Facebook.
Design a clone system for facebook
Practice system Designing
This was the HR round taken by the hiring manager of the company.
Tell me about yourself
Tell me about the most challenging project
Tell me about the basic pillars of OOPs
What has been your greatest failure?
What do you always regret?
How do you respond to change?
Greatest challenging project
How do you handle stress
How will you resolve conflict with the Manager
Tip 1 : Make sure your resume is up-to-date
Tip 2 : Be confident and focus on your communication
Tip 3 : Prepare for the behavioral questions
Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
Which operator is used for exponentiation in Python?