Algorithms is the study of procedures for solving problems efficiently and of proving that they are correct. A first course covers searching and sorting, recursion, divide and conquer, greedy methods, dynamic programming and graph algorithms such as breadth-first search and shortest paths.
Analysis is as important as design. Binary search halves the range each step, so it needs about log2n comparisons; merge sort runs in O(nlogn) while insertion sort is O(n2) in the worst case. Recurrences such as T(n)=2T(n/2)+n describe divide-and-conquer running times.
Algorithms power search engines, navigation apps, recommendation systems, compression, scheduling and logistics. Knowing the standard techniques lets you recognise when a problem is a known one in disguise, which is often the fastest route to an efficient solution.