Introduction to Sorting and Searching�
By
Mr. Abhijit T. Somnathe
What is Sorting?
What is Searching?
Searching Methods
Searching Methods
Searching Methods
Linear Search
Linear Search
Linear Search
Linear Search
45, 78, 12, 67, 08, 51, 39, 26
Binary Search
Binary Search
Binary Search
Binary Search
Binary Search
Binary Search
Interpolation Search
Interpolation Search
Internal and External Sorting
Internal Sorting
Bubble Sort Algorithm
Bubble Sort Algorithm
Insertion Sort Algorithm
Insertion Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Selection Sort Algorithm
Quick Sort Algorithm
Quick Sort Algorithm
External Sorting
Merge Sort Algorithm
Merge Sort Algorithm
Merge Sort Algorithm
A S O R T I N G A N D M E R G I N G E X A M P L E
Merge Sort Algorithm
Merge Sort Algorithm
Merge Sort Algorithm
Merge Sort Algorithm
A A A D E E E G G G I I L M M N N N O P R R S T X
Comparison of Sorting Techniques Based on Their Complexity
Comparison of Sorting Techniques Based on Their Complexity
Hashing
Hashing
Hashing
Hashing
Hashing
Hashing
Hashing
Hash Function
hash = hashfunc(key)
index = hash % array_size
Hash Function
Hash Table
Hash Table
Operation in Hash Function
Operation in Hash Function
How to choose a Hash Function
Characteristics of a good Hash Function
Hashing Collision
Hashing Collision
Open Hashing (Separate Chaining)
Open Hashing (Separate Chaining)
Open Hashing (Separate Chaining)
Open Hashing (Separate Chaining)
Closed Hashing (Open Addressing)
Closed Hashing (Open Addressing)
Linear Probing
Linear Probing
Linear Probing
Linear Probing
Linear Probing
Quadratic Probing
Double Hashing
Double Hashing
Double Hashing
(16, 8, 63, 9, 27, 37, 48, 5, 69, 34, 1).
h1(n)=n%20
h2(n)=n%13
n h(n, i) = (h1 (n) + ih2(n)) mod 20
Double Hashing
n | h(n,i) = (h’(n) + i2) %20 |
16 | I = 0, h(n,0) = 16 |
8 | I = 0, h(n,0) = 8 |
63 | I = 0, h(n,0) = 3 |
9 | I = 0, h(n,0) = 9 |
27 | I = 0, h(n,0) = 7 |
37 | I = 0, h(n,0) = 17 |
Double Hashing
48 | I = 0, h(n,0) = 8 I = 0, h(n,1) = 9 I = 0, h(n,2) = 12 |
5 | I = 0, h(n,0) = 5 |
69 | I = 0, h(n,0) = 9 I = 0, h(n,1) = 10 |
34 | I = 0, h(n,0) = 14 |
1 | I = 0, h(n,0) = 1 |
ANY DOUBTS?