Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kinshuk-code-1729/data-structures-and-algorithms
This repository contains certain programs of DSA.
https://github.com/kinshuk-code-1729/data-structures-and-algorithms
arrays data-structures-and-algorithms data-structures-c graphs linked-lists queues searching-sorting stacks tree-structure
Last synced: about 2 months ago
JSON representation
This repository contains certain programs of DSA.
- Host: GitHub
- URL: https://github.com/kinshuk-code-1729/data-structures-and-algorithms
- Owner: kinshuk-code-1729
- License: cc0-1.0
- Created: 2021-11-27T14:18:36.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-13T18:26:14.000Z (9 months ago)
- Last Synced: 2024-04-14T08:52:17.224Z (9 months ago)
- Topics: arrays, data-structures-and-algorithms, data-structures-c, graphs, linked-lists, queues, searching-sorting, stacks, tree-structure
- Language: Java
- Homepage:
- Size: 218 KB
- Stars: 4
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π This repository contains various codes of _Data Structures and Algorithms_ from _[GFG](https://www.geeksforgeeks.org/), [Leetcode](https://leetcode.com/) and [Hackerrank](https://www.hackerrank.com/)_.
![DSA Image](https://www.thinknexttraining.com/images/data-structues-and-algorithms-mob.jpg)
## π What is a data structure ?
- A data structure is a special way of organizing and storing data in a computer so that it can be used efficiently.
- **Array, LinkedList, Stack, Queue, Tree, Graph** etc are all basic data structures that store the data in a special way so that we can access and use the data stored in them efficiently.## π Why do we need data structures ?
- Data structures are used in almost every program or software system.
- Specific data structures are essential ingredients of many efficient algorithms, and make possible the management of huge amounts of data, such as large integrated collection of databases.
- In software design, Data structures are known to be major factors for collection, storing and organizing of data rather than algorithms in some programming languages.
- Often Data structures are used in the combination of algorithms.## β¨ How are data structures used in programming language ?
- The data structure is not any programming language like _C, C++, Java,_ etc.
- It is a set of algorithms that we can use in any programming language to structure the data in the memory.
- To structure the data in memory, **_'n'_** number of algorithms were proposed, and all these algorithms are known as Abstract data types.## β Classification of Data Structure :
![classification of DS](https://media.geeksforgeeks.org/wp-content/uploads/20220520182504/ClassificationofDataStructure-660x347.jpg)- **_Linear_ data structure :** Data structure in which data elements are arranged sequentially or linearly, where each element is attached to its previous and next adjacent elements, is called a linear data structure.
**_Examples of linear data structures are [array](https://www.geeksforgeeks.org/array/), [stack](https://www.geeksforgeeks.org/stack/), [queue](https://www.geeksforgeeks.org/queue/), [linked list](https://www.geeksforgeeks.org/data-structures/linked-list/), etc._**- **_Static_ data structure :** Static data structure has a fixed memory size. It is easier to access the elements in a static data structure.
**_An example of this data structure is an [array](https://www.geeksforgeeks.org/array/)._**
- **_Dynamic_ data structure :** In dynamic data structure, the size is not fixed. It can be randomly updated during the runtime which may be considered efficient concerning the memory (space) complexity of the code.
**_Examples of this data structure are [queue](https://www.geeksforgeeks.org/queue/), [stack](https://www.geeksforgeeks.org/stack/), etc._**- **_Non-linear_ data structure :** Data structures where data elements are not placed sequentially or linearly are called non-linear data structures. In a non-linear data structure, we canβt traverse all the elements in a single run only.
**_Examples of non-linear data structures are [trees](https://www.geeksforgeeks.org/tree-data-structure/) and [graphs](https://www.geeksforgeeks.org/graph-data-structure-and-algorithms/)._**