| Term | Definition |
| algorithm | a well-ordered collection of unambiguous and effectively computable operations that, when executed, produce a result and halt in a finite amount of time. |
| pseudocode | used to design and represent algorithms, set of English language constructs designed to resemble statements in a programming language but that do not actually run on a computer. It is simple, highly readable, and have virtually no grammatical rules. |
| sequential operations | computation, input, and output |
| computation | words and phrases inside quotation marks represent specific elements that you must insert when writing an algorithm. |
| input | operations submit to the computing agent data values from the outside world that it may then use it later instructions. |
| output | operations send results from the computing agent to the outside world. |
| control operations | conditional and iterative |
| conditional statements | they allow an algorithm to ask a question and to select the next operation to perform on the basis of the answer to that question. |
| loop | the repetition of a block instructions |
| iteration | is looping |
| continuation condition | The true/false condition is evaluated to find out which step to take next/ |
| pretest loop | the continuation condition is tested at the beginning of each pass through the loop, and therefore it is possible for the loop body never to be executed. |
| posttest loop | the test is done at the end of the loop body by using a true/false continuation condition |
| Four algorithmic problem solving methods in chapter 2 | go forth and multiply; looking looking looking; Big, bigger, biggest; Meeting you match |
| Attributes of algorithms | correctness, ease of understanding, elegance, efficiency |
| benchmarking | are useful for rating one machine against another and how sensitive a particular algorithm is with respect to variations in input on one particular machine. |
| correctness | the result must be correct |
| ease of understanding | clarity, ease of handling |
| elegance | the level of difficulty |
| efficiency | careful use of resources (most desirable attribute of an algorithm) |
| hamiltonian circuit | a path through a graph that begins and ends at the same node and goes through all other nodes exactly once |
| Data cleanup algorithms | the shuffle-left algorithm, the copy over algorithm, the converging-pointers algorithm, |