AQA 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/49

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 12:05 AM on 5/13/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

50 Terms

1
New cards

Algorithm

A step-by-step set of instructions that can be followed to solve a problem.

2
New cards

Computer Program

An implementation of an algorithm using a specific programming language.

3
New cards

Decomposition

The process of breaking down a problem into smaller, more manageable sub-problems that each accomplish a specific task.

4
New cards

Abstraction

The process of removing unnecessary details to focus on the essential parts of a problem.

5
New cards

Pseudocode

A way of describing algorithms using structured, plain English.

6
New cards

Program Code

Code written in a specific programming language.

7
New cards

Flowchart

A diagram that represents an algorithm using symbols.

8
New cards

Efficiency

A measure of how well an algorithm performs in terms of time or steps.

9
New cards

Searching Algorithm

A method used to find a specific value (target) in a list of data.

10
New cards

Linear Search

A search method that checks each item one by one.

11
New cards

Binary Search

A fast search method that works on sorted data by halving the search range on each iteration.

12
New cards

Sorting Algorithm

A method used to arrange data into a specific order, usually ascending or descending

13
New cards

Bubble Sort

A simple sorting algorithm that repeatedly swaps adjacent items.

14
New cards

Merge Sort

A fast, efficient sorting algorithm that uses divide-and-conquer.

15
New cards

Divide and Conquer

The process of repeatedly splitting a dataset into smaller datasets and so on

16
New cards

Why is binary search better than linear search for a large array?

  • Binary search is more efficient on average

  • A linear search would be less efficient because it must check all items

17
New cards

What are advantages and disadvantages of bubble sort and merge sort?

Bubble

  • A: simpler to code

  • A: quicker to sort smaller list

  • D: slower to sort larger arrays

  • D: less efficient

Merge

  • A: more efficient

  • A: quicker to sort larger arrays

  • D: harder to code

18
New cards
Procedure
A subroutine that performs an action but doesn't return a value.
19
New cards
Function
A subroutine that returns a value.
20
New cards
Robustness
How well a program can handle errors or unexpected inputs.
21
New cards
Data Structure
A concept referring to ways of organizing and storing data.
22
New cards

What is an array

a data structure that stores a collection of items, typically of the same data type, accessed using an index (one- and two-dimensional are required).

  • a collection of similar data items stored under a single name

  • each item is accessed using an index

23
New cards
Records
A data structure used to group related data items of potentially different data types under a single name.
24
New cards
Concatenation
An operation to join two or more strings together.
25
New cards
Local Variables
Variables declared within a subroutine that only exist while the subroutine is executing and are only accessible within that subroutine.
26
New cards

Syntax Error

An error in the grammar or rules of the programming language, preventing the code from being translated or run

27
New cards
code from being translated or run.
28
New cards
29
New cards
Logic Error
An error in the program's design or algorithm that causes it to produce incorrect or unexpected results, even if it runs without crashing.
30
New cards

Advantages of decomposition?

  • It makes complex problems easier to understand

  • Easier to design and implement solutions for

  • Easier to debug and maintain

  • Allows sub-problems to be split across a team of developers

31
New cards

Advantages of abstraction?

  • focus on essential aspects of the problem

  • time is not wasted on developing unnecessary components

32
New cards

What factors affect speed of sorting algorithms?

  • size of data set

  • nature of data

  • algorithms design (bubble sort slower/merge sort faster; linear search slower/binary search faster)

33
New cards

Efficiency increases when?

  • number of steps is lower

  • algorithm avoids unnecessary operations

34
New cards

Linear search vs Binary search

Linear

  • any data (unsorted)

  • slower (checks one by one)

  • simple

Binary

  • sorted data

  • faster (halves list each step)

  • more complex to implement

35
New cards

How does linear search work?

  • start at first item in list

  • check each item one by one until target is found or end is reached

36
New cards

How does binary search work?

  • can only be used on sorted lists

  • repeatedly divides list in half, comparing middle element to target (divide and conquer)

  • narrow search range until item is found (as middle element) or the list cant be divided further

37
New cards

How does bubble sort work?

  • repeatedly goes through list, comparing 2 adjacent items and swapping if they are in wrong order

  • this is done as multiple passes until no swaps are needed - indicating the list is sorted

38
New cards

Characteristics of bubble sort

  • simple to understand and implement

  • inefficient for large data sets as it requires multiple passes

  • takes a long time if list is in reverse order

39
New cards

How does merge sort work?

divide and conquer algorithm

  • continuously splits the list in half until each sublist has one item

  • merge sublists back together in correct order

40
New cards

Characteristics of Merge Sort

  • faster than bubble sort for large datasets

  • uses more memory due to recursion and temporary lists

  • more complex to implement

41
New cards

Why do data types matter?

  • help computer understand how to store and manipulate data

  • choosing correct data types ensures the program runs efficiently and without errors

  • some operations are only valid for certain data types

42
New cards

What is a subroutine?

  • a block of code given a unique name that can be called multiple times

  • may include parameters and return values

43
New cards

Why are meaningful identifier names important?

improves readability and understanding

44
New cards

Characteristics of Array

  • items must be same data type

  • indexing starts at 0 (for most languages)

45
New cards

Array vs Records

array

  • data types - all elements must be the same

  • accessed by - index

  • suited for - list of similar items

records

  • data types - can be different

  • accessed by - field name

  • suited for - grouping related attributes

46
New cards

What is structured programming?

method of writing clear, modular, and easy-to-understand code using 3 core principles:

  • sequence

  • selection

  • iteration

47
New cards

Define the 2 types of subroutine

  • procedure - performs an action

  • function - performs an action and returns a value

48
New cards

Characteristics of local variables

  • declared inside a subroutine

  • can only be accessed within parameters of the subroutine

  • only exist while the subroutine is executing

49
New cards

Advantages of Subroutines

  • can be developed in isolation/independently/separately

  • easier to discover errors

  • easier to understand program code

  • easier for a team of programmers to work together on a large project

  • easier to reuse code

50
New cards

Data validation checks

  • length check

  • presence check

  • range check