1. Fundamentals of algorithms Flashcards
Computational Thinking
Solving problems using a computer system.
Decomposition
Breaking down complex problems into smaller, more manageable parts.
Abstraction
Focusing on essential details while ignoring unnecessary information.
Algorithm
A set of step-by-step instructions designed to solve a specific problem.
Systematic Approach
Taking a logical approach and using algorithmic thinking to solve a problem.
Pseudocode
Text-based tool using short English statements to describe an algorithm.
Program Code
Specific to a programming language, unlike generic pseudocode.
Flowchart
Visual tool using shapes to represent different functions of an algorithm, showing input/output, processes, decisions, and control flow.
Algorithm Inputs
Data or information entered into a program before processing, sourced from various inputs like user interaction or sensors.
Algorithm Processes
Doing actions in the algorithm that transform inputs into desired outputs, executed by the CPU.
Algorithm Outputs
Result of processing in an algorithm, often the indicator of whether the algorithm functions as intended.
Trace Table
Tool used to trace through an algorithm or program, testing for logic errors and recording the state of the algorithm at each step.
Purpose of Trace Table
Discovering the algorithm’s purpose, showing output data and intermediary steps, and recording the state of the algorithm.
Trace Table with Algorithms
Trace tables can be used with flowcharts, pseudocode, or program code to analyze algorithms and programs.
Algorithm Efficiency
Measure of the time taken to complete an algorithm.