Sorting and Searching - Concepts, Algorithms and Python Code

Linear and Binary Search, Bubble Sort, Insertion Sort, Selection Sort, Radix Sort, Quick Sort, Shell's Increment Sort

Ratings: 4.33 / 5.00




Description

Sorting and Searching are fundamental operations frequently used by Computers. Whenever we log in to the system, the user enters the credentials. The system searches to the authorization database and validates to allow the user to enter the system. Searching becomes efficient when the data is in sorted form. A well-sorted Pharmaceutical Shop is an example of a sorted dataset. When a customer gives the prescription sheet, the pharmacist searches in the shop for the required medicine easily as the medicines are in sorted order. Sorting has been studied extensively by researchers for a long time in the domain of Algorithms and Data Structures. In this course, we teach two important searching algorithms, Linear Search and Binary Search. Binary Search leverages the fact that the data are in sorted order. While Linear Search scans the data linearly from one end to the other in O(n) time, Binary Search uses an interesting technique and accomplishes the task in Olog2n) time. We teach the simple and straightforward sorting algorithms, Bubble Sort, Quick Sort, Insertion Sort, and Selection Sort. For each of the algorithms we teach in the following steps:

1. Concepts and Principles

2. Illustration with a dataset

3. Algorithm

4. Python Program

5. Analysis of Algorithms on the Computational Complexity

We then teach interesting Sorting algorithms Radix Sort and Shell's Diminishing Increment Sort. At the end of the course, the student will be able to appreciate the searching and sorting algorithms and gain hands-on experience on Python Programs for Sorting and Searching.

What You Will Learn!

  • Searching Algorithms
  • Sorting Algorithms
  • Python Code for Sorting and Searching Algorithms
  • Complexity Analysis

Who Should Attend!

  • Computer Science Students
  • Information Technology Students
  • Engineering Students