Algorithm Notes (3 Pages)
Page 1 – Introduction to Algorithms
An algorithm is a finite sequence of step-by-step instructions used to solve a problem.
Characteristics include Input, Output, Definiteness, Finiteness and Effectiveness. Advantages: easy
to understand, language independent, simplifies debugging, improves efficiency. Example: Find the
largest of two numbers.
Page 2 – Types of Algorithms and Searching
Types: Brute Force, Divide and Conquer, Greedy, Dynamic Programming and Backtracking. Linear
Search examines each element one by one with O(n) complexity. Binary Search works on sorted
arrays with O(log n) complexity.
Page 3 – Sorting, Complexity and Applications
Sorting algorithms include Bubble Sort, Selection Sort, Insertion Sort, Merge Sort and Quick Sort.
Time complexities: O(1), O(log n), O(n), O(n log n), O(n²). Applications include AI, Machine
Learning, Databases, Operating Systems, Networks and Software Development. Conclusion:
Algorithms provide efficient solutions and form the basis of computer programming.