Offcanvas

Software Data Structure!

Software Data Structure!
intcore
By: Samuel Samir

Data Structure!  

What does it mean? And why was it invented in the first place? Let's start with the definition of Data Structure, simply, it is a way of organizing and storing data. Using Data structure, computers can store, retrieve, and process a large amount of data which are stored at different addresses at the memory, processing that going further reduce the latency and the user is provided fast response. One other important reason of why data structure is so important; problems are solved with algorithms and those algorithms need suitable data structure to perform this algorithm in an efficient way. So we have several classes of data structure each one is suitable for a different case.

Arrays

  • One Dimensional Arrays

A basic data structure that looks like several rooms behind each other, each one has a number (address in memory ) and its size is fixed.

  • Multidimensional Arrays

It is a multidimensional simple array, can be 2 dimensions like Matrix , or can be 3 dimensions ( X , Y , Z).

  • Dynamic Arrays

It exists in most of the programming languages, it allows you to create an array with dynamic size grow and shrink depending on the data, It is used a lot in the coding process because it is simple and fast.

  • Linked List

Linked list data structure provides better memory management than arrays; because linked list is an allocated memory at run time,so there would be  no waste of memory. It's a collection of nodes that are connected by links. Each node contains the data and pointer (link) to the next node. The first node is usually referred to as the head node and the last node is referred to as the tail nodePlay with linked list https://www.cs.usfca.edu/~galles/visualization/StackLL.html

 

  • Stack

The word describes itself , for example, you have a collection of books [ Book A , Book B and Book C ] on your table and we want to build a stack with them, so we take “Book B ” and put it above “Book A”  and get “Book C” above “Book B” so if we want to take out “Book B” , first we should take out “Book C” and then “Book B”. Basically the last book in is the first one out , and from this point we get the definition of stack as first in last out “FILO”. A LIFO stack is a data structure which means last in first out, the last item to come in is the first one to go out. A stack can either be implemented using an array or a linked list .Play with Stack https://www.cs.usfca.edu/~galles/visualization/StackArray.html

  • Queue

Same concept as stack, the word queue is also derived from day to day activities. You have most likely seen a queue of people in a supermarket where the last one comes to stand at the end and the first one to finish. A FIFO stack data structure which elaborates to First In First Out. A queue is like stack, can either be implemented using arrays or linked list. Play with Queue https://www.cs.usfca.edu/~galles/visualization/QueueArray.html

  • Trees

Do you remember linked list consisting of nodes where each node contains data and is linked to the next link ? Trees are similar to linked lists but each node is connected to a left and right nodes, they have links between them.

    

  • Binary Trees

 It is a special kind of tree where the left node is always smaller than the parent node and the right node is always bigger than the parent node, in order to add/delete a node we have to compare the value with the root node if it is smaller than the parent go to left and so on, play with Binary Trees https://www.cs.usfca.edu/~galles/visualization/BST.html

To tie everything together…

Data Structure is fantastically invented to organise data in a safer way and with a shorter amount of time making your software more organized and a lot faster. So, Thank you Data Structure and whoever started it.

References 

https://medium.com/swlh/introduction-to-data-structures-9134b7d064a6h

http://cs-fundamentals.com/data-structures/introduction-to-data-structures.php#linked-list-dsa

People liked
Huawei's MASSIVE cri...

Huawei made a place for itself in the market for the past few years and how well it was known for the consumers, as it actually produced one of the smartest Android phones in the market, but yeah it was all going so well until a few days ago! Everything has changed!

How to use analytics...

A user’s experience within an app is the most important factor that determines if the users like an app and will continue to use it or if they will uninstall the app and increase bounce rates.  In this blog post, we’ll explore how to use analytics to improve your mobile app’s user experience. 

Instagram is affecti...

Based on a research conducted by Oberlo, there are 3.2 billion users on social media! Which approximately equates to 42% of the population, we’re close to the 50%! Facebook has still been ruling among all the social media platforms, following it comes Instagram which now became the most-used social media platform for the young ages, and here comes the problem we will discuss today!

How Mobile Apps are...

Mobile applications have an increasing demand and is expected to increasingly grow in 2025. Mobile apps are becoming beneficial to the healthcare industry, transforming patient care, enhancing accessibility, easing and streamlining the medical management. Mobile apps advancement will reshape the healthcare industry and make it more innovative.

Offcanvas Title
Your content here.