1/19
Flashcards providing vocabulary terms and definitions related to algorithms, programming, and their foundational concepts from the CSE 1321 Module 0 lecture.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Algorithm
A set of logical steps to accomplish a specific task; a set of directions/instructions that contains data and instructions that operate on that data.
Algorithmic Thinking
The ability to understand what an algorithm is, how to write one, and how to logically group concepts or objects.
Abstraction
The logical grouping of concepts or objects to hide details and allow for thinking at a high level.
Good Algorithm Properties
Algorithms should be precise, unambiguous, complete, correct, simple, and contain levels of abstraction.
Precise Algorithm
A property of a good algorithm indicating exactness and accuracy in its steps.
Unambiguous Algorithm
A property of a good algorithm meaning it can only be interpreted in one way, avoiding confusion.
Complete Algorithm
A property of a good algorithm meaning it covers all possible cases and scenarios for its task.
Correct Algorithm
A property of a good algorithm meaning it produces the expected or desired output every time.
Simple Algorithm
A property of a good algorithm meaning it is easy to understand, follow, and implement.
Describing Algorithms
Algorithms can be created using natural language (e.g., English), pictures or flowcharts, pseudocode, or a specific programming language like Python.
Natural Language Algorithm
An algorithm described using everyday language, like step-by-step instructions in English.
Flowchart Algorithm
An algorithm described using pictures and diagrams with standard symbols to represent steps, decisions, and flow.
Pseudocode
A high-level description of an algorithm using a mix of natural language and programming-like constructs, not tied to a specific programming language.
Data Structures
Components of an algorithm used to hold and organize data efficiently.
Instructions (Algorithm Component)
Components of an algorithm that define actions to change data values.
Conditional Expressions
Components of an algorithm used to make decisions based on certain criteria.
Control Structures
Components of an algorithm that act on decisions, dictating the flow of execution (e.g., loops, branches).
Modules
Components of an algorithm used to group related parts, making the algorithm manageable through abstraction.
Programming
The process that starts with developing a good algorithm, then converting it into a language-specific syntax.
Programming Language Syntax
The set of rules defining how statements must be structured and written in a particular programming language.