Ch 5. Recurrence Relations
Ch 5. Key Terms
Algorithm: A finite, step-by-step procedure for solving a specific problem or performing a task.
Base Case: The simplest instance of a recursive problem; the condition that terminates a recursive algorithm.
Big O Notation: An asymptotic upper bound that describes an algorithm’s worst-case growth rate.
Big Omega Notation: An asymptotic lower bound that describes an algorithm’s best-case growth rate.
Big Theta Notation: An asymptotic tight bound describing an algorithm’s exact growth rate.
Characteristic Equation: An equation derived from a linear homogeneous recurrence relation with constant coefficients, used to determine closed-form solutions.
Closed‑Form Solution: A direct formula that computes the [latex]n[/latex]th term of a sequence without recursion.
Concatenation (of Strings): The operation of joining two strings end‑to‑end to form a new string.
Decreasing Sequence: A sequence in which each term is less than the one before it.
Finite Sequence: A sequence that contains a limited number of terms.
Homogeneous Recurrence Relation: A recurrence relation with no added non-zero term; all terms depend only on previous values.
Increasing Sequence: A sequence in which each term is greater than the one before it.
Index: The position of an element within a sequence.
Index of Summation: The variable used in sigma notation to indicate which term of a sequence is being summed.
Infinite Sequence: A sequence that continues indefinitely.
Initial Conditions: Starting values of a sequence that allow a recurrence relation to generate all subsequent terms.
Iteration (Method): A technique for solving recurrence relations by expanding terms step‑by‑step to identify a pattern.
Linear Homogeneous Recurrence Relation of Order [latex]k[/latex] with Constant Coefficients: A recurrence of the form [latex]a_{n} = c_{1}a_{n-1} + c_{2}a_{n-2} + \cdots + c_{k}a_{n-k}[/latex]
Nondecreasing Sequence: A sequence where each term is greater than or equal to the one before it.
Nonincreasing Sequence: A sequence where each term is less than or equal to the one before it.
Null String (Empty String): The string with no characters, denoted [latex]\epsilon[/latex].
Pseudocode: A structured, language-neutral description of an algorithm’s logic.
Recurrence Relation: An equation that defines each term of a sequence based on one or more previous terms.
Recursive Algorithm: An algorithm that solves a problem by calling itself on smaller instances of the same problem.
Recursive Function: A function whose definition includes a call to itself.
Sequence: An ordered list of elements in which the position of each element matters.
Sigma Notation: A compact notation used to express sums using the symbol [latex]\Sigma[/latex].
String: A finite sequence of characters drawn from an alphabet.
Substring: A contiguous block of characters taken from a string.
Subsequence: A sequence obtained by selecting elements from another sequence while preserving their order.
Trace (of an Algorithm): A step-by-step record of an algorithm’s execution.