Fundamentals of Algorithms

Algorithm- A sequence of steps followed to complete a task

Decomposition- Breaking a large problem into smaller problems to make it easier to understand

Abstraction- Process of removing unnecessary detail from a problem

Pseudocode- A method of writing up a set of instructions for a computer program using plain english

Flowchart- A diagram which shows a step by step process of an algorithm

Input- Data or information which is put into the program

Output- Data or information which the program makes

Trace Table- A table which shows how the values of variables change as the program executes.

Efficiency- Managing to carry out a task whilst making the least possible use of resources.

Time Efficiency- How much time is taken for an algorithm to complete a particular task.

Search- Finding a value or piece of information within a set of data.

Linear Search- Searching through a list of items, checking them one by one until its found

Binary Search- Searching through an ordered list by looking at the middle item in the list. Compare it to the other depending on what the task is. The process repeats until the value is found.

Sort- A way of placing information into a certain order, such as alphabetically or by number

Merge sort- A way of sorting a list by dividing it in two pairs until each item is separated individually, then they are compared and put in order until it’s all ordered.

Bubble sort- A way of sorting a list by comparing the items in a list, two at a time, and changing the order if needed. Process is repeated until it is in correct order.