Community resourceWorksheet
OCR H446 1.4.2 Arrays, records, lists and tuples
Part 1 of 14 · H446 1.4.2 · Data structures
OCR H446 1.4.2 expects students to choose between arrays, records, lists and tuples rather than reach for whichever structure is most familiar. This worksheet builds that choice from shape, meaning, mutability and the operations a program actually performs, using a creative-events app that holds seat grids, performer details, editable set lists and fixed colour values.
Students will:
- describe arrays, records, lists and tuples in terms of shape, access and whether values may change
- choose a structure for a described requirement and reject one close alternative with reasons
- explain how traversal, update, addition and removal differ across the four structures
- design storage for a changing ordered collection of player records with named fields
- complete closed-book sentences on structure choice without an answer bank
Inside: 8 explanation cells, 3 multiple-choice questions, 1 fill-in-the-blanks cell and 2 written answers. 21 marks, about 40 to 50 minutes.
Series: H446 1.4.2 · Data structures, part 1 of 14.
Shared by Coding PathwayVerified teacher
- 14 cells
- About 45 minutes
- CC BY-SA 4.0
- Shared 31 Aug 2026
- Updated 3 Sept 2026
Preview
The whole resource, exactly as a class sees it. Answers and marking are held back.
Arrays, records, lists and tuples
A creative-events app stores seat grids, performer details, editable set lists and fixed colour coordinates. The structure should match the meaning and required operations.
By the end, you will be able to
- describe arrays, records, lists and tuples;
- choose a structure from shape, types and operations;
- distinguish a program record from a database record;
- qualify create, traverse, update, add and remove behaviour.
Reactivate: an index locates a position; a data type describes one value.
Compare the structures
An array has a fixed indexed shape in the abstract model. A record groups named fields about one entity and fields may have different types. A list is an ordered collection that can grow or shrink. A tuple is an ordered immutable grouping: create a new tuple rather than changing it in place.
Worked choice routine
Requirement: store one performer’s name, stage number and access requirements. The fields have different meanings/types and belong to one entity, so use a record.
Requirement: store a 20 × 30 seat-state grid. Positions are regular and indexed by row/column, so use a 2D array.
Routine: entity or collection? → fixed shape? → same/different field meanings? → must size/content change? → required access pattern.
Which structure best groups one attendee’s name, ticket number and access flag as named fields?
- ARecord
- B2D array
- CStack
- DTuple of unrelated items
Why might a tuple suit an RGB colour coordinate that should not change?
- AIt always sorts its values
- BIt is an ordered immutable grouping
- CIt removes duplicate values
- DIt can only hold Booleans
Which comparison between a changeable list and a fixed array is most accurate?
- AA list is simply an array with more initial positions
- BA fixed array automatically resizes with no management cost
- CA list can resize while the program runs, but capacity or link management can add overhead
- DA list cannot be traversed by position
Guided practice
For each scenario, annotate: entity/collection; fixed/growing; homogeneous/heterogeneous; indexed/named access; mutation required. Then choose a structure and reject one near alternative.
Choose and justify structures for: (a) a 12-month array of attendance totals, (b) one venue with name/capacity/open fields, and (c) an editable ordered set list.
Give structure plus linked property for each.
Students type their answer here.
Worked operation qualification
Traverse an array/list/tuple by visiting indexes/items. Update an array element or list item in place. Add/remove from a dynamic list. A tuple is immutable, so produce a new tuple. A fixed-size array cannot grow: insertion may mean shifting within spare capacity or creating another array.
These qualifications matter more than memorising Python method names.
Independent transfer
Design storage for a small game leaderboard containing a changing ordered collection of player records. Each record needs name, score and verified status.
Specify the outer and inner structures, show one example value, and explain how traversal, addition, removal and score update would work.
Keep collection operations separate from record-field access.
Students type their answer here.
Closed-book checkpoint
Complete each sentence from memory. There is no answer bank and correctness is held for teacher review.
Review your responses
Check every response against its command word and the supplied constraints. Strengthen unsupported answers with accurate method, mechanism, state or contextual consequence before submitting.