12. Python Chapter 1 — algorithms and problem solving - revision mindmap
All mindmaps · Full chapter · Practice answers

Open full-resolution image · Printable collection - page 12
The map is a completed revision summary. Cover a branch and reconstruct it, then try the linked chapter practice. Read the image at full size when labels are small.
Text version
Decode the contract
- Input types and valid domain
- Return versus print versus mutate
- Output shape: count, value, tuple or list
- All matches, ties, duplicates and required order
Decompose and abstract
- Decomposition splits tasks; abstraction retains relevant detail.
- Pattern recognition finds similarities; generalise a reusable solution.
- Modular functions separate responsibilities with clear inputs and outputs.
- Incremental development: implement and test a small version, then extend.
Choose state
- Counter, sum or product
- Current minimum/maximum
- Result collection
- Give each variable a meaning that remains true after updates
Express the algorithm
- Sequence, selection and iteration
- Clear pseudocode and bounds
- Derive steps before Python syntax
- Avoid unnecessary sorting or input mutation
Verify the solution
- Normal and smallest valid input
- Empty input where allowed
- Equality, negative values, ties and duplicates
- Check all requested functions, outputs and demonstrations
Worked example & exam traps
- All longest in [‘a’,‘cat’,‘dog’]: find max length 3, then collect ties.
- Result [‘cat’,‘dog’]; returning only ‘cat’ misses a requirement.
- For a maximum, start from an existing item when the input is nonempty.
- Avoid: first match for all; maximum initialised to 0 for negative-only input
Sources and reading
This map condenses Chapter 12 and its source trail. Use the self-learning reading guide for the corresponding VJC pages and A notes. It does not add topics to the stated promo scope.