Chapter 9&10 - Algorithm Design And Program Solving + Data Types & Structures Flashcards
Abstraction
The process of extracting information that is essential while ignoring what is not relevant for the provision of a solution
Decomposition
The process of breaking a complex problem down into smaller parts
Pattern recognition
Identification of parts of a problem that are similar and could use the same solution
Structured English
Method of showing the logical steps in an algorithm, using an agreed subset of straightforward English words for commands and mathematical operations
Flowchart
Diagrammatic representation of an algorithm
Algorithm
Ordered set of steps to be followed in the completion of a task
Pseudocode
Method of showing the detailed logical steps in an algorithm, using key words, identifiers with meaningful names, and mathematical operators
Stepwise refinement
The practice of subdividing each part of a larger problem into a series of smaller parts, and so on, as required
Benefits of abstraction (3)
Time required to develop the program is reduced so the program can be delivered to the customer more quickly
Program is smaller in size so takes up less space in memory and download times are shortened
Customer satisfaction is greater as their requirements are met without any irrelevant features
Process of abstraction (3)
Identify purpose of the model of the situation
Identify sources of information
Use information gathered from appropriate sources to identify what details aren’t necessary and need to be removed
Data type
Classification attributed to an item of data, which determines the types of value it can take and how it can be used
Identifier
Unique name applied to an item of data
Record (data type)
Composite data type constructed using several of the basic data types available in a particular programming language
Array
Data structure containing several elements of the same data type
Index [array]
Numerical indicator of an item of data’s position in an array