Fundamentals For Data Crunching
Data Crunching :
Data Crunching can be defined as by using some tools or algorithms we are transforming the form of data.
Data Structures : Data Structures is a particular way of sorting and organizing data in a computer so that it can be used efficiently. Some well known data structures are :
- Array
- Lists
- Tree
- Heap
- Hashing
- Graph
Algorithm : Algorithm is a step - by - step procedure for calculations or you can tell it is a sequence of program instructions designed to compute a particular result.
Some of their Applications :
- Facebook Graph Search
- Dropbox manage to upload some large files instantly and to save a lot of storage space.
- Shazam App
- Cluster Manager etc...
Array :

It is contiguous area of memory consisting of equal size elements indexed by contiguous integers. It has constant time to add/remove an element at the end and has Linear time to add/remove an element at an arbitrary location. Indexing of array starts from 0 to len(array) -1 where len(array) gives length of array.
Big OH : It is one of the way of measuring time complexity and space complexity. Less will be the space and time complexity of the program , more optimized and efficient your program is.
Example :
1) a = 0
b = 0
for i in range(0,n): -O(n)
a = a+rand(); -O(1)
for j in range(0,m): -O(m)
b = b+rand(); -O(1)
Here in this program the time complexity is O(m+n)
2) a = 0
for i in range(0,n): - O(n)
for j in range(n,i,-1): -O(n)
a = a+i+j
Here in this program the time complexity is O(n**2)
3) a = 0
i = N
while(i > 0):
a += i
i /= 2
Here in this program the time complexity is O(logn)
Comments
Post a Comment