Back to Problem Solving with DSA

~/blog/tutorials/problem-solving-with-dsa

Searching and Sorting

Searching and Sorting

Searching and sorting are the most fundamental algorithmic patterns. This section covers the major search and sort algorithms — each in its own post with worked examples, traced iteration tables, and complete code.

What's in this section

  1. Introduction to recursion — the pattern that powers divide-and-conquer
  2. Linear search — the simplest search, with the sentinel optimization
  3. Binary search — logarithmic search on sorted arrays
  4. Interpolation search — binary search with a smarter midpoint
  5. Bubble sort — repeated swapping
  6. Selection sort — selecting the minimum
  7. Insertion sort — building the sorted portion incrementally
  8. Merge sort — divide, conquer, combine
  9. Quick sort — partition-based sorting
  10. Counting sort — linear time when the range is small
  11. Radix sort — digit-by-digit sorting