click below
click below
Normal Size Small Size show me how
Compsci #9
From 6 [algorithms]
| Term | Definition |
|---|---|
| Algorithms | Step-by-step procedure for solving a problem in a finite amount of time. Algorithms must have a clear stopping point |
| Pseudocode | Describe algorithms in a way that is intended for human eyes only. Focuses on the logic |
| Case time | The running time of an algorithm grows with input size. Average case time is often difficult to determine. We focus on the worst case running time |
| Algorithm scalability | Scalability includes speed. Does the algorithm finish quickly when processing large inputs? |
| Experimental study | Evaluate the scalability by measuring the running time when using various input sizes |
| Experimental study limitations | Results may not be indicative of the running time on other inputs not included in the experiment. To compare two algorithms, you must use the same software/hardware |
| Theoretical analysis | Predicting how an algorithm's runtime grows with input size by analyzing its logic, not by running the code. This saves time, is hardware/software independent, and estimates efficiency based on the number of operations relative to input size |
| Primitive operations | Primitive operations are simple steps in an algorithm, each taking a basic amount of time. Counting them helps measure an algorithm's efficiency without running it |
| RAM model | Standardize the primitive operation. Consists of a CPU and limitless bank of memory cells. To simplify the model, we assume memory cells are numbered and accessing a cell takes unit time |
| Algorithms function | Instead of measuring an algorithm's running time for a specific input size, we find a function that shows how running time changes with input size. This helps predict performance and compare algorithms |