Skip to content

Latest commit

 

History

History

Data Structures and Algorithms II

Practice 0 - Fibonacci Sequence

Is the sequence of numbers where each number is the sum of the two preceding ones

Practice 1 - Sorting Algorithms Part I

Bubble Sort and Merge Sort are two of the most famous sorting algorithms. In this practice, you will implement them and compare their performance.

Practice 2 - Sorting Algorithms Part II

Quick Sort and Heap Sort are two of the most popular sorting algorithms. They are both divide and conquer algorithms. They are both comparison based sorting algorithms. They are both in-place algorithms. They are both non-comparison based sorting algorithms.

Practice 3 - Sorting Algorithms Part III

Radix Sort and Counting Sort are two sorting algorithms that are not based on comparison. They are used to sort a list of numbers in linear time. Radix sort is used to sort numbers with a large range, and Counting sort is used to sort numbers with a small range.

Practice 4 - Searching Algorithms Part I

Linear Search and Binary Search are the two most common searching algorithms. Linear search is a very simple search algorithm. In this type of search, a sequential search is made over all items one by one. Every item is checked and if a match is found then that particular item is returned, otherwise the search continues till the end of the data collection.

Practice 5 - Searching Algorithms Part II

Hash Table is a data structure that maps keys to values for highly efficient lookup. In a hash table, the keys are generated by a hash function that determines the location of each key in the table. The hash function is used to map the key to a location in the hash table where its corresponding value can be stored or retrieved.

Practice 6 - Graphs I

A graph is a data structure that consists of a finite (and possibly mutable) set of vertices or nodes

Practice 7 - Graphs II

The graph class has a dictionary of nodes. The key is the name of the station and the value is the node.

Practice 8 - Trees I

A full Binary tree is a special type of binary tree in which every parent node/internal node has either two or no children.

Practice 9 - Trees II

Practice 10 - Files

Practice 11 - Threads OpenMP

Practice 12 - Parallel Programming I

Practice 13 - Parallel Programming II