As a student, programmer, and teacher of computer engineering, I find the ‘Data Structures’ a core course of computer engineering and particularly central to programming process. In fact in our day-to-day life, we are confronted with situations such as where would I keep the following items?
- A bunch of keys
- A pen
- Coins
- Two thousand rupees
- A chalk
- Five hundred thousand rupees
I would keep the bunch of keys and coins in the left and right pockets of my pants, respectively. The pen gets clipped to the front pocket of the shirt whereas two thousand rupees would go into my ticket pocket. I would definitely put the five hundred thousand rupees into a safe, i.e., under the lock and key. While teaching, I will keep the chalk in hand. The decision of choosing the places for these items is based on two factors: ‘ease of accessibility’ and ‘security’.
Similarly, given a problem situation, a mature programmer chooses the most appropriate data structures to organize and store data associated with the problem. Reason being that the intelligent choice of data structures shall decide the fate of the software in terms of effectiveness, speed and efficiency—the three most important much needed features for the success of a commercial venture.
Thought to ponder...
First you are in the light, then the light is in you, and then you and the light are one.
Bhagwan Sri Satya Sai baba