- An algorithm that is called repeatedly but for a finite number of times, each time being a single iteration.
- Often used to move incrementally through a dataset.
- An algorithm that calls itself in its definition.
- The recursive case in a conditional statement is used to trigger the recursion.
- The base case in a conditional statement is used to break the recursion.
- An algorithm that follows the problem solving heuristic of making the locally optimal choice at each stage with the hope of finding a global optimum.
- The general five components, taken from Wikipedia:
- A candidate set, from which a solution is created.
- A selection function, which chooses the best candidate to be added to the solution.
- A feasibility function, which is used to determine if a candidate can be used to contribute to a solution.
- An objective function, which assigns a value to a solution, or a partial solution.
- A solution function, which will indicate when we have discovered a complete solution.
- Search Algorithms
- Sequential Search
- Binary Search
- Sorting Algorithms
- Selection Sort
- Bubble Sort
- Insertion Sort
- Merge Sort
- Quicksort
- Heap Sort
- Radix Sort
- Tree & Graph Traversal Algorithms
- Breadth-First Traversal
- Depth-First Traversal (Pre-Order, In-Order, Post-Order)