Data Structures and Algorithms
The programmatic way of storing data, so that it can be used efficiently. Almost every enterprise application uses various types of data structures in one or the other way.
Algorithms is a step-by-step e programmatic way of storing data, so that it can be used efficiently. Almost every enterprise application uses various types of data structures in one or the other way.
Why do we need to learn Data Structures and Algorithms?
Every day the complexity of applications are increasing which result in more complex and rich sets of data, due to the complexity we generally face the following 3 types of problems every day.
Problems faced by the large enterprise or corporate (service and data):
- Data Searching: Consider users registered in social app is more than 1 million, if we want to search for one person in that 1 million, the search operation need to be performed on that 1 million user records. Thus the search operation slows down every time new user data is stored.
- Processor capacity/speed: Capacity of processor need to be very high to handle such large sets of data. Failing to do so will cause poor performance and bad experience to the users.
- Too-many requests: Everyone hold PC/Laptop, Mobile devices and IoT gadgets which connects to the service to perform some operation on the data. Thus the number of service request sent and received by the devices and the server are way many. Even the fastest server might fail to respond sometimes.
How to solve the above problems?
To solve the above 3 problems (Data Searching, Processor capacity/speed & Too-many requests) we can use the Data Structures.
Data can be organized in a way that data is categorized and sorted before searching, thus allowing us to search instantly.
Exactly what is that we are going to do with Data structures and algorithms?
As we already know the Algorithms is step-by-step procedure for performing an operation. And that operations are used for manipulating the data. Let’s us see the operations or the categories of algorithms.
Categories of algorithms: