9.1 Algorithms And Problem Solving Flashcards
What is abstraction
The process of simplifying a complex process by focussing on the most important parts. For example a map or model
What are the types of abstraction
Data allocation, encapsulation, modularisation, function abstraction
What is data Abstraction
The representing of complex entities or data structures into a simplified manner through classes and objects
What is encapsulation
Gathering of related operation or data into a single unit. E.g a class
What is function abstraction
The combining of instructions into a function which can be reused throughout projects, creating modularity and reuseability
What is modularisation
Breaking down a programme into smaller modules/components
What is decomposition
The breaking down of a complex problem into smaller, more manageable steps, making it easier to solve
What is decomposition
The breaking down of a complex problem into smaller, more manageable steps, making it easier to solve
What is one method of decomposition
Stepwise refinement = involves breaking down a problem into its primary problems and steps, in which then each of these steps/problems involves their own break down and steps. E.g making a cup of tea involves many steps like boiling a kettle. This method creates a binary tree looking shape
Why is decomposition effective
- its breaks down complicated problems down into similar steps
- makes is easier to understand the overall objectives of a problems
- easier to incorporate into coding, each problems can be represented by modularisation e.g classes and function
What is an algorithm
A set of instructions to solve a problem that are unambiguous
How is an algorithm created
By splitting a task into individual steps, both humans and computers use algorithms, computers algorithms most be unambiguous, and precise.