Vocab Flashcards
syntax error
A mistake in typed code that violates the rules of the programming language. Typically, code with syntax errors will not run.
logic error
A mistake in an algorithm or program that causes it to behave unexpectedly or return the incorrect value.
run-time error
A mistake in a program that happens only when the program is actually run, such as a program attempting to access memory that does not exist.
overflow error
Error that results when the number of bits is not enough to represent the number (like a car’s odometer “rolling over”).
bit
A binary digit, either 0 or 1.
byte
A sequence of 8 bits
roundoff
Error that results when the number of bits is not enough to represent the number with full precision (like using 3 digits to represent \piπpi as 3.14)
analog data
Values that change smoothly, rather than in discrete intervals, over time. For example, the pitch and volume of a live concert.
lossless
Compressing data in a way that preserves all data away and allows full recovery of the original
lossy
Compressing data in a way that discards some data and makes it impossible to recover the original
metadata
Data about data, like descriptive information about a file or a row in a database
sequencing
The sequential execution of steps in an algorithm or code in a program (like steps in a recipe).
selection
A Boolean condition to determine which of two paths are taken in an algorithm or program
iteration
The repetition of steps in an algorithm or program for a certain amount of times or until a certain condition is met
linear search
An algorithm that iterates through each item in a list until it finds the target value
binary search
An algorithm that searches a sorted list for a value by repeatedly splitting the list in half
reasonable time
A run time for an algorithm that doesn’t increase faster than a polynomial function of the input size (like 10n10n10, n, n^2n2n, squared, etc). An unreasonable run time would increase superpolynomially (like 2^n2n2, start superscript, n, end superscript or n!n!n, !)
heuristic
A technique that helps an algorithm find a good solution in a hard problem (like always walking toward the north star when you are stuck in a forest).
undecidable
A problem that is so logically difficult, we can’t ever create an algorithm that would be able to answer “yes or “no” for all inputs (like the halting problem)
library
A collection of procedures that are useful in creating programs
API
Application Programming Interface, a library of procedures and a description of how to call each procedure
modularity
The separation of a program into independent modules that are each responsible for one aspect of the program’s functionality
traversal
The iteration over the items in a list. A full traversal iterates over every item, while a partial traversal iterates over a subset of the items
computing device
A physical device that can run a program, such as a computer, smart phone, or smart sensor