https://quizlet.com/570804284/ap-csp-big-idea-3-algorithms-and-programming-flash-cards/?i=3cf6l8&x=1jqt
Algorithm
Set of steps to solve a problem or complete a task.
API (Application Program Interface)
Contains specifications for how the procedures in a library behave and can be used.
Argument
The actual input expression supplied to a function or procedure in the call statement.
Arithmetic Operators
+, -, *, /, %
Assignment Statement
To assign a value to a variable
Binary Search
Considered a "divide and conquer" algorithm because it divides the dataset into two equal parts. Feedback about whether the value in question is higher or lower than the midpoint of the list determines which half to discard and which half to continue searching. The dividing and searching steps are repeated until the value is found or determined to not be in the list.
Boolean Values
Can only represent the values true or false.
Clarity
How easy it is to understand.
Concatenation
Attaching two things side-by-side, frequently strings.
Condition
Certain requirements that need to be met in order for selection statements to run.
Data Abstraction
Simplifies a set of data by representing it in some general way. You can then work with that representation instead of each piece of data itself.
Decidable Problem
One where an algorithm can be written that results in a correct "yes" or "no" answer for all inputs.
Decision Problem
A problem that has a yes or no answer
Efficiency
The efficiency of algorithms deals with the resources needed to run it in terms of how long it will take and how much memory will be needed. This becomes especially important with extremely large datasets, and efficiency is usually stated in terms of the size of the input. While the time will vary based on the computer used, general rules are used to determine the efficiency of these algorithms.
Element
An individual value in a list.
Expression
A statement that returns only one value.
Heuristic
Some problems can't be solved in a reasonable amount of time. In this case, computers turn to an approximate solution.
Iterative
Also called loops, and they repeat themselves over and over until the condition for stopping is met.
Library
Contains already-developed procedures that you can use in creating your own programs.
Linear Search
Also called a sequential search algorithm, and it checks each value of a list in order until the result is found.
Lists
A collection of items such as integers and strings.
Logical Operators
Known as NOT, AND and OR. These can be used to combine multiple conditions
Modularity
When you divide a computer program into separate sub-programs
Modulus
Modulus math uses division, but only provides the remainder as the answer, not the quotient.
Optimization Problem
Asks what the best solution is to the task at hand.
Parameter
The input variables of a procedure.
Procedural Abstraction
The details of how a procedure works are abstracted away. You only need to know the name of the procedure, the number and type of parameters, and the output to expect.
Procedure
A group of programming instructions. They're also known as methods or functions, depending on the programming language. You can use a procedure to use the same set of instructions, again and again, without having to rewrite it into your code.
Pseudocode
A simplified programming language.
Readability
To help programmers understand a program by writing clear and understandable names.
Relational Operators
RETURN Statement
To end a function before the end of the procedure is reached.
To send a value back to the calling program.
Selection Statement
Process primarily takes the form of conditional statements known as if statements.
Sequential Statement
Consists of steps in your algorithm that are implemented in the order they're written in. Once you execute one statement, you go on to the next one.
Simulation
Designed to represent and mirror the real world for testing.
String
Text fields that are just a series of characters and are denoted with quotation marks around the text field.
Substring
Section of strings.
Traverse
Go through, a list
Undecidable Problem
Does not have an algorithm that can give a correct "yes" or "no" for all cases of the problem. An algorithm may work for some cases, but not all.
Variable
Placeholders for values a program needs to use.