Data Structures Overview
Bad programmers worry about code , good programmers worry about data structures and their relationships!
Data structures provide efficient ways to store data. A proper data structure can boost an Algorithm. If we need to make a app performs good then we must care about selecting proper data structure.
There is a tradeoff between running time complexity and memory time complexity. Eg. Dijktras algorithm with priority queue performs better but it will take more memory. If we need to minimize the memory then the application will be slow.
Abstract data types - Data Structures
Abstract data type is basically the logical implementation. We can use data structures like array or linked list to implement it. So Abstract data types are logical definition and data structures are concrete implementations. This is the difference between abstract data types and data structures.
Arrays - Basics
It can be N dimensional according to the needs. Arrays are good because it has O(1) time complexity to get by index.
Disadvantages are
- It is compile-time : it is no so dynamic data structures.
- If it is full we need to create a bigger array to copy the contents. That operation is going to take O(N) time complexity
- It is not able to store items with different type
No comments:
Post a Comment