# Data Structures
In computer science, a data structure is a data organization, management, and storage format that enables efficient access and modification. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.
Not to be confused with data type. DS serves as baises of ADT
Different types of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks.
For Example, relational databases commonly use B-tree indexes for data retrieval, while ==compiler implementations== usually use hash tables to look up identifiers.# Algorithms
Maths is the study of the fromal systems
Solutions to some general problems. Problem solving
How to measure if a algorith is better than another?
Enter Time Complexity, estimated by counting the number of elementary operations performed by the algorithm
Since an algorithm's running time may vary among different inputs of the same size, one commonly considers the worst-case time complexity, which is the maximum amount of time required for inputs of a given size
This is further simplified by using the Asymptotic_analysis which is approximating fucntional vales for very large value of fn input
Commonly represented as Big-O Notation Fastest growing term
Constant linear quadratic
THEOREM
Computer Science is no more about computers than astronomy is about telescopes
- Python operations time complexity
# How do we calculate it?
- Difference b/w time and space complexity
- Is there a tool to auto calculate it?