2.2.2 Computational Methods Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

Computable problems

A
  • can be represented by an Algorithm
  • solved within a finite timescale
  • solved at a reasonable cost
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Problem recognition

A
  • identifying there is a problem to be solved/ what the problem is [1]
  • stakeholders state what they require from the solution
  • information is used to clearly define the problem and system requirements
  • problem may be defined by considering :
  • strengths and weaknesses of current solution
  • inputs, outputs, stored data and volume of data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Problem decomposition

A
  • problems are broken down into smaller problems until each sub problem can be represented as a self contained subroutine
  • has the same benefits as modular programming
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Use of divide and conquer

A
  • divide and conquer splits a big problem into smaller parts [1]
  • repeatedly divides the problem into smaller sub problems halving the size of the problem with every iteration (divide) [1]
  • each subproblem is solved, often recursively (conquer)
  • solutions to the sub problems are then recombined (merge)
  • used in quick sort, merge sort and binary search
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Problem solving strategies

A
  • backtracking
  • data mining
  • heuristics
  • performance modelling
  • pipelining
  • visualisation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Backtracking

A
  • an approach to finding a solution that explores a possibility until it is no longer deemed feasible.
  • After finding a solution /
    failing to find a solution go back to an earlier step to test an alternative
  • is used in DFS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Data mining

A
  • involves searching through unconnected data [1]
  • used to identify patterns or outliers in large sets of data collected from a variety of sources [1]
  • may include pattern matching algorithms [1]
  • spots trends or correlations between data which are not immediately obvious [1]
  • insights from data mining can aid predictions about the future [1]
  • useful tool in assisting business and marketing decisions [1]
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Heuristics

A
  • non optimal, rule of thumb approach to problem solving [1]
  • which is used when it is unfeasible to analyse all eventualities [1]
  • provides a good enough solution/result although it is not 100% reliable or accurate [1]
  • used in A* , machine learning etc
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Performance modelling

A
  • when the behaviour of something is tested or simulated before it is used in the real world
  • to identify potential bottlenecks and areas of improvement
  • can be used for evaluating and predicting the performance characteristics of a software system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Pipelining

A
  • carrying out instructions concurrently [1]
  • the output of one process is usually an input of the next [1]
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Visualisation

A
  • presents data in way that’s easier to understand [1]
  • makes it possible to identify trends that were not otherwise obvious [1]
  • eg. Use of graphs, trees, charts etc
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Example of backtracking in DFS

A
  • when a node doesn’t have any nodes to visit
  • the algorithm goes back to the previous visited node
  • the check for further nodes to visit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly