1/16
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
algorithms
a sequence of steps that can be followed to complete a task, which always terminates
pseudocode
a way of writing algoithms which can be understood without the need for knowledge of a specific programming language
assignment
the process of giving a value to a variable or constant
in pseudocode:
var/const ← val
sequence
instructions that follow on from one another
in pseudocode, instructions are written in the order in which they appear unless a looping or branching instruction changes this
selection
the process of choosing an action to take based off the result of a comparison
in pseudocode:
IF (comparison) THEN
action
ELSE
action
END IF
(ELSE IF can also be used between IF and ELSE)
iteration
the process of repeating an instruction
in pseudocode:
FOR number ←start to end
action
ENDFOR
or
or WHILE (comparison)
action
ENDWHILE
abstraction
the process of simplifying a problem by removing unnecessary details, can be either representational or by generalisation
representational abstraction
an abstraction of a problem created by simply removing unnecessary details
abstraction by generalisation/categorisation
a grouping of things by common characteristics, where groups may be connected through hierarchical relationships
information hiding
the process of hiding all details of an object that do not contribute to the solution of the problem
procedural abstraction
the process of breaking down a complex model into a series of procedures that follow specific steps
the actual values used in solving the problem are abstracted away
functional abstraction
the process of breaking down a complex model into a function that performs specific tasks without considering the method (i.e. by calling procedures but not specifying their steps)
data abstraction
the process of hiding complex details about how data is represented to produce a simplified representation, which allows new kinds of data structures to be created from previously defined data structures (abstract data types)
problem abstraction/reduction
details are removed from a problem until it is represented in a way which is easier to solve (it may be reduced down to a problem, or group of problems, which already have algorithms to solve them)
decomposition
the division of a problem into a smaller series of sub-problems, which may be solved individually or decomposed further until all parts of the original problem have been solved
composition
the combination of procedures to form a system capable of solving complex problems which have previously been decomposed into smaller problems
automation
the process of creating a computerised model of a real-life situation and putting it into action
i.e. by putting abstractions of real world phenomena into algorithms and data structures and combining these into a program