2.2.2 Computational Methods

studied byStudied by 2 people
0.0(0)
Get a hint
Hint

Decomposition

1 / 12

flashcard set

Earn XP

13 Terms

1

Decomposition

Once a problem has been clearly defined, it is continually broken down into smaller problems.

New cards
2

Divide and conquer

Problem-solving technique that can be broken down into three parts: divide, conquer and merge. Divide involves halving the size of the problem in each iteration. These subproblems are solved in the conquer stage, often using recursion. The solutions are then recombined during the merge state to form the final solution

New cards
3

Common uses of divide and conquer

Binary search, quick sort, merge sort

New cards
4

Advantage of divide and conquer

The size of the problem halves with each iteration which greatly simplifies very complex problems. This means time complexity is O(log n)

New cards
5

Disadvantage of divide and conquer

As it uses recursion, stack overflow will cause the program to crash and large programs are very difficult to trace

New cards
6

Representational abstraction

Excessive details are removed to simplify a problem

New cards
7

Advantages of abstraction

Allows programmers to focus on the core aspects required of the solution

Allows a large, complex project and its functionality to be split up into simpler component parts

New cards
8

Backtracking

Methodically visiting each path and building a solution based on the paths found to be correct. Depth-first graph traversals are an example.

New cards
9

Data mining

Used to identify patterns or outliers in large data sets, termed big data. Used in software designed to spot trends or identify correlations between data which aren’t immediately obvious

New cards
10

Heuristics

A non-optimal, ‘rule-of-thumb’ approach to problem solving which are used to provide an approximate solution to a problem when the standard solution is unreasonably time consuming or resource intensive

New cards
11

Performance modelling

Eliminates the need for true performance testing by providing mathematical methods to test a variety of loads on different operating systems. Provides a cheaper, less time-consuming method of testing applications

New cards
12

Pipelining

A process that allows for projects to be delivered faster, as modules are divided into individual tasks, with different tasks being developed in parallel

New cards
13

Visualisation

Can be used to present data in a way that is easier for us to understand. May be represented as graphs, trees, charts and tables

New cards

Explore top notes

note Note
studied byStudied by 18 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 3 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 10 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 43 people
Updated ... ago
5.0 Stars(2)
note Note
studied byStudied by 3 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 11 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 15 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 58 people
Updated ... ago
5.0 Stars(3)

Explore top flashcards

flashcards Flashcard40 terms
studied byStudied by 10 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard85 terms
studied byStudied by 8 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard62 terms
studied byStudied by 3 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard58 terms
studied byStudied by 35 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard34 terms
studied byStudied by 6 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard55 terms
studied byStudied by 7 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard84 terms
studied byStudied by 6 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard40 terms
studied byStudied by 27 people
Updated ... ago
5.0 Stars(8)