Computer Science Paper 1

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/142

flashcard set

Earn XP

Description and Tags

AQA Vocabulary Sheet

Last updated 7:44 AM on 6/9/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

143 Terms

1
New cards

Define: Data type

Determines what type of value a variable will hold and the set of operations allowed.

2
New cards

Define: Pointer/Reference

A pointer is an object that stores a memory address.

3
New cards

Define: Records

A composite data structure which allows for a collection of fields to be grouped together.

4
New cards

Define: Arrays (lists)

A collection of elements, each accessed using an index and all elements must be of the same data type.

5
New cards

Define: User-defined data type

A custom data type created by the user combining existing data types.

6
New cards

Define: Variable

An identifier that represents a memory location that can store a value. This value can change during execution of a program.

7
New cards

Define: Constant

An identifier that represents a memory location that can store a value. This value cannot change during execution of a program.

8
New cards

Define: Assignment

A statement that sets the value of a variable/constant.

9
New cards

Define: Iteration

Iteration is the repetition of a block of code.

10
New cards

Define: Definite iteration

Definite iteration is the repetition of a block of code for a set number of times. An example structure is a FOR loop.

11
New cards

Define: Indefinite iteration

The repetition of a block of code being controlled by a condition. The number of iterations to be performed is not known when entering the block of code.

12
New cards

Define: Selection

Allows blocks of code to be executed only when a certain condition is satisfied.

13
New cards

Define: Nested (selection/iteration)

When an iteration/selection statement appears inside another iteration/selection statement it is considered nested.

14
New cards

Why are meaningful identifier names important?

Makes the code easier to understand and maintain as the name should describe the purpose of the variable or subroutine.

15
New cards

Define: Integer remainders

While integer division discards the remainder, this can still be a useful value. The remainder can be obtained by using the modulo operator.

16
New cards

Define: Exponentiation

refers to the repeated multiplication of a base number by a certain amount of times (the power).

17
New cards

Define: Rounding

Rounding refers to replacing a number with an approximate simpler value. This is often a whole number but could be a number with a fixed number of decimal places.

18
New cards

Define: Truncation

Truncation refers to shortening something. It usually refers to removing digits from a number.

19
New cards

Define: Exception handling

A programming mechanism that allows a graceful response to errors or events during the runtime of the program that would have caused the program to crash.

20
New cards

Define: Subroutine (procedure/function)

A named ‘out of line’ block of code that may be executed by simply writing its name in a program statement. It can be reused multiple times within a program.

21
New cards

Define: Parameter (of subroutine)

Parameters define the data to be passed to a subroutine.

22
New cards

Define: Subroutines with interfaces

A subroutine interface is the method of passing data in and out of a subroutine.

23
New cards

Define: Local variable

Variables that are declared within a subroutine, they exist only while a subroutine is executing and are accessible only from within the subroutine.

24
New cards

Define: Global variable

A variable with global scope, meaning it can be accessed from anywhere within the program.

25
New cards

Define: Stack frame

A stack frame is a portion of the stack memory used with subroutine calls to store: return address; parameters; local variables. A stack frame allows us to move to a subroutine call and then return to where we were called from and carry on.

26
New cards

Define: Recursion

A recursive subroutine is one that has a call to itself as part of its execution.

27
New cards

Define: Base case

A base case is a value that will not cause a recursive call and therefore allow the recursion to complete (and backtrack).

28
New cards

Define: Programming paradigm

A programming paradigm is a particular approach to writing programs.

29
New cards

Define: Procedural

A programming approach that is based on the use of procedures and functions.

30
New cards

Define: Structured approach to program design

Breaking down problems into sub-problems so that code is then organised into subroutines.

31
New cards

Define: Hierarchy chart

A diagram that represents the structure of a program. Each subroutine is shown as a rectangle and the hierarchy shows how subroutines are called from others.

32
New cards

Define: Object-oriented

The object-oriented paradigm makes use of objects as containers of both properties and methods.

33
New cards

Define: Class

Defines methods and property/attribute fields that capture the common behaviours and characteristics of objects.

34
New cards

Define: Object

A structure that combines data and the procedures necessary to operate on that data.

35
New cards

Define: Instantiation

Creating an instance of a class (creating an object from a class).

36
New cards

Define: Encapsulation

Combining of properties and methods together into a class where the way in which the data is stored and the way that methods are carried out is hidden from other classes.

37
New cards

Define: Inheritance

The relationship between two object types in which one is a kind of the other and shares some of its properties or behaviours.

38
New cards

Define Association and give the two type of Association

A relationship between two classes - Composition and Aggregation

39
New cards

Define: Aggregation

A type of association where the aggregated object has a weaker form of association with the objects that it is aggregating than is the case with composition. These objects have an existence independent of the aggregated object and can continue to exist even after the aggregated object is disposed of.

40
New cards

Define: Composition

A type of association where the relationship is stronger. If the containing object is destroyed, the associated object is also destroyed.

41
New cards

Define: Polymorphism

The concept that different objects can respond to the same method call in different ways based on their class.

42
New cards

Define: Overriding

An overridden method has the same name as a method from an inherited class but a different implementation.

43
New cards

Define: Encapsulate what varies

The separation of code that might need to be constantly changed. Areas of code that might need to be changed can be encapsulated behind an interface. Then, when any changes are needed, software written to use the interface does not need to be changed.

44
New cards

Define: Favour composition over inheritance

The principle that programmers should look to use composition over inheritance when looking at concepts such as polymorphism.

45
New cards

Define: Program to interfaces, not implementation

The principle that programmers should look to communicate between parts of a program by using an interface rather than the knowledge of an implementation.

46
New cards

Define: Class diagram

A class diagram shows the relationship between classes in a program. Class diagrams involve single inheritance, composition (black diamond line), aggregation (white diamond line), public (+), private (-) and protected (#) specifiers.

47
New cards

Define: Data structure

Allows for a collection of data to be organised and processed.

48
New cards

Define: Single- and multi-dimensional arrays (lists)

An array is a data structure that holds a number of elements of the same data type. A single-dimensional array is like a single row of values. A two-dimensional array is like a table of values.

49
New cards

Define: Binary file

A binary file is a file whose binary content must be interpreted by a program or processor that can identify how the data is formatted. Generally, any non-text file, such as an executable, image or movie.

50
New cards

Define: Text file

A text file is a file whose content is characters encoded from a character set, with a new line character being used to separate lines.

51
New cards

Define: Abstract data type

A model of a data type that is defined in terms of its behaviour and operations without specifying how these are implemented.

52
New cards

Define: Queue

A data structure that follows the first in, first out (FIFO) principle.

53
New cards

Define: Enqueue

The concept of adding an element to the rear of a queue.

54
New cards

Define: Dequeue

The concept of removing an element from the front of a queue.

55
New cards

Define: Linear queue

A linear data structure where elements are added to the rear of the queue and are removed from the queue at the front, following the FIFO principle.

56
New cards

Define: Circular queue

A queue implemented using an array such that when the rear pointer reaches the end of the array it can wrap around to reuse empty spaces at the beginning of the array.

57
New cards

Define: Priority queue

Each element of a priority queue has an associated priority. Elements are dequeued in order of priority and, where two elements have the same priority, elements that were added first are removed first.

58
New cards

Define: Stack

A stack is a data structure that follows the last in, first out (LIFO) principle.

59
New cards

Define: Push

The concept of adding an element to the top of a stack.

60
New cards

Define: Pop

The concept of removing an element from the top of a stack.

61
New cards

Define: Peek

The concept of looking at the element at the top of a stack.

62
New cards

Define: Graph

A diagram consisting of vertices joined by edges.

63
New cards

Define: Weighted graph

When values are associated with the edges on a graph.

64
New cards

Define: Directed graph

A diagram consisting of nodes joined by directed edges.

65
New cards

Define: Connected graph

If there is always a path between any two nodes in a graph it is said to be connected.

66
New cards

Define: Adjacency matrix

An adjacency matrix is a 2D array that records the relationship between nodes in a graph. For a graph with n nodes, we create an n by n adjacency matrix.

67
New cards

Define: Adjacency list

An adjacency list is a list of all nodes and for each node we record neighbouring nodes.

68
New cards

Define: Tree

A tree is a connected, undirected graph with no cycles.

69
New cards

Define: Rooted tree

A tree in which one node has been designated as the root. A rooted tree has a parent-child relationship between nodes. The root is the only node with no parent and all other nodes are descendants of the root.

70
New cards

Define: Binary tree

A binary tree is a rooted tree in which each node has at most two children. A common application of a binary tree is as a binary search tree.

71
New cards

Define: Hash table

A hash table is a data structure that creates a mapping between keys and values.

72
New cards

Define: Collision

A collision occurs when two key values compute the same hash.

73
New cards

Define: Dictionary

A collection of key-value pairs in which the value is accessed via the associated key.

74
New cards

Define: Vector

A quantity having direction as well as magnitude.

75
New cards

Define: Vector addition

Adding each corresponding element of two vectors together to generate a new vector. Vector addition achieves translation.

76
New cards

Define: Scalar vector multiplication

The multiplication of a scalar and a vector generates a new vector which is made by multiplying the scalar value against each of the components of the vector. Vector multiplication achieves scaling.

77
New cards

Define: Convex combination of two vectors, u and v

Is an expression of the form α u + β v where α, β ≥ 0 and α + β = 1.

78
New cards

Define: Dot product of two vectors

The dot product of two vectors, u and v, u = [u1, …, un] and v = [v1, …, vn] is u ∙ v = u1v1 + u2v2 + …… + unvn.

79
New cards

Define: Static data structure

The size of a static data structure is fixed and the memory required to store the data structure is determined before runtime.

80
New cards

Define: Dynamic data structure

The size and memory taken up by a dynamic data structure can vary while a program is running.

81
New cards

Define: Heap

Heap memory is a region of memory used for dynamic allocation. As programs request memory they can be allocated memory from the heap.

82
New cards

Define: Graph traversal

A graph traversal is the process of visiting each node in a graph.

83
New cards

Define: Breadth first search

A graph traversal algorithm which makes use of a queue, it visits all nodes on the same level before moving on to the next level. It can be used to find the shortest path for an unweighted graph.

84
New cards

Define: Depth first search

Depth first search is a graph traversal algorithm which makes use of a stack. A depth first search proceeds down through a node branch as far as possible before backtracking. Application: navigating a maze.

85
New cards

Define: Tree traversal

Visiting each node in a tree.

86
New cards

Define: Pre-order traversal application

Pre-order: Copying a tree.

87
New cards

Define: In-order traversal application

Outputting the contents of a binary search tree in ascending order.

88
New cards

Define: Post-order traversal application

Post-order: Infix to RPN conversions, producing a postfix expression from an expression tree, emptying a tree.

89
New cards

Define: Infix notation

Infix notation is the standard way of writing mathematical expressions where the operators are placed between their operands.

90
New cards

Define: Prefix notation

A way of writing mathematical expressions where the operators precede their operands.

91
New cards

Define: RPN – Reverse Polish Notation

A form of mathematical notation where operators follow operands and is also known as postfix form. There is no need for brackets when using RPN and there is also no need for the concept of operator precedence.

92
New cards

Define: Linear search – O(n)

An algorithm that sequentially checks each element in an array or list until a match is found or the end is reached.

93
New cards

Define: Binary search – O(log n)

An algorithm that compares a search item to the middle item of an array or list. If they do not match, half of the array or list can be eliminated and the search continues in the other half. The array or list needs to be sorted so that a binary search can be performed.

94
New cards

Define: Binary tree search – O(log n)

A binary tree that is ordered allows for the use of a binary tree search algorithm. This is similar in principle to a binary search and we compare our search item to the root node. If they do not match, we can eliminate one half of the tree and the search can continue in the other half. If the tree is balanced, it has a complexity of O(log n).

95
New cards

Define: Bubble sort – O(n2)

A bubble sort works by making passes through the array or list. While making a pass we compare neighbours and swap them if they are out of order. After a series of passes the array or list will be sorted.

96
New cards

Define: Merge sort – O(nlog n)

The merge sort is a divide-and-conquer algorithm. The original array or list is broken down into smaller and smaller parts until we have individual elements. The merge sort continues by building back sorted groups until we end with the full sorted result.

97
New cards

Define: Dijkstra’s shortest path

Dijkstra’s shortest path algorithm works as a means of finding the shortest path for a whole set of nodes. It finds the shortest path from a start node to all other nodes in a graph.

98
New cards

Define: Algorithm

A sequence of steps that can be followed to complete a task and that always terminates.

99
New cards

Define: Abstraction

The process of removing unnecessary details from a problem.

100
New cards

Define: Representational abstraction

Removing unnecessary details.