visit
Data Structures and Algorithms are one of the most important skills that every computer science student must-have. It is often seen that people with good knowledge of these technologies are better programmers than others.
Choosing the correct data structure or algorithm to solve a particular problem affects a lot on the efficiency of the solution.
Consider the scenario of an interview, where two programmers A and B applied for a software developer role and were asked to solve the below problem.
Problem: Given a sorted array and a key to search. Check if the key is present in the array or not.
Programmer A solves the above problem by performing a linear search operation and programmer B solves the above problem by performing Binary Search operation.
After the results are announced, programmer B got selected and programmer A got rejected.
The solutions of both of the programmers A and B were correct, but programmer B is found to be efficient and more proficient in using the correct data structure and algorithms to solve a particular problem given. The problem mentioned above takes
O(N)
time by the solution of programmer A whereas it takes O(LogN)
time by the solution of programmer B.With the increasing demands and competition in the software engineering industry, companies these days not only look for hard-working developers but also for developers who can solve a problem as optimally as possible to met customer satisfaction and are not afraid of paying high.Some surveys conducted about the salary reports of software developers in India says that anyone who has a good and fair understanding of how data structures and algorithms work earns around 20–30 Lakhs per annum.
Thanks for reading.❤
If you have any suggestions please write to me on [email protected]