-
linkedlist
- linkedlist.py: A list of nodes where a single node contains a data element and a reference to the next node.
- Real life example: Music player playlist, Google Maps , Social Media.
-
Dictionary
- dictionary.py:A dictionary is a general-purpose data structure for storing a group of objects. A dictionary has a set of keys and each key has a single associated value. When presented with a key, the dictionary will return the associated value.
- Real life example: Phone Book.
-
BinaryTree
- binarytree.py:A tree whose elements have two children. Since each element in a binary tree can have only 2 children, we typically name them the left and right child.
- Real life example: Data Compression, Routing Tables.
-
Graph
- graph.py:A non-linear data structure with nodes and connections.
- Real life example : Recommendation Engine, World Wide Web, Mapping Services.
-
HashTable
- hashtable.py:A hash table is a type of data structure that stores key-value pairs. The key is sent to a hash function that performs arithmetic operations on it. The result (commonly called the hash value or hash) is the index of the key-value pair in the hash table.
- Real life example: Password Hashing, Fast Data Lookup.
-
Heap
- heap.py:A heap is a tree-based data structure in which all the nodes of the tree are in a specific order. For example, if is the parent node of , then the value of follows a specific order with respect to the value of and the same order will be followed across the tree.
- Real life example: Java Virtual Machine to store java objects.
-
Stack
- stack.py:A stack is a conceptual structure consisting of a set of homogeneous elements and is based on the principle of last in first out (LIFO).
- Real life example : History of visited websites, call logs.
-
Queue
- queue.py:A Queue is a linear structure which follows a particular order in which the operations are performed. The order is First In First Out (FIFO).
- Real life example: Kernel Scheduling, File Downloading Operations in the Browser.
-
Binary Search
- binarysearch.py:Binary Search is a searching algorithm used in a sorted array by repeatedly dividing the search interval in half. The idea of binary search is to use the information that the array is sorted and reduce the time complexity to O(Log n).
- Real life example : Dictionary
-
Quicksort
- quicksort.py:QuickSort is a Divide and Conquer algorithm. It picks an element as pivot and partitions the given array around the picked pivot.quicksort breaks down the problem of sorting the complete array into smaller problems by breaking down the array into smaller subarry. time complexity is n*log(n).
- Real life example : Numerical computations
-
Bubblesort
- bubblesort.py: A bubble sort algorithm goes through a list of data a number of times, comparing two items that are side by side to see which is out of order. It will keep going through the list of data until all the data is sorted into order. Each time the algorithm goes through the list it is called a passed. best time complexity is O(n)
-
Notifications
You must be signed in to change notification settings - Fork 0
LikemDzokoto/Popular-DS-and-Algorithm-
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Popular Data Structures and Algorithms Implemented in Python
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published