One day before i get to know Data Structures .. i always asked myself.. Why a programmer need to learn about data structures and algorithms ? Is it that important ?
This post will be an advise more than an introduction toward learning Structures and Algorithms .
It started by asking myself during developing an application , what should i use to store a set of data , An Array or a LinkedList ? sometimes the array made me problems other times the linkedlist made me problems too , but i didn't know why !! Here came the need of learning Data Structures and Algorithms.
Let us explain it in a matter of points :
- More Complex Applications needs more powerful computers
- How an application considered to be Complex ? As for computer world , Complex only mean MORE CALCULATIONS like Scientific Calculations
- What if you use a Wrong data type while developing such a complex thing ? It will cause waste of hardware capabilities .
- First : Analyze program to determine resource constraints.
- Second : Select the Data Structure that best meets this requirements .
Final Thoughts :
- Primary goal of computer programs is to Store and Retrieve Information.
- Computer Programs must support efficient processing ( knowing what data type you should use).
- Study of Data structures and Algorithms is fundamental for Computer Science.