跳到主要内容

题型分析

题型分值频率难度
Enqueue with circular wrap-around6 marksHigh★★★
Dequeue with circular wrap-around6 marksHigh★★★
Full / empty state detection2–3 marksMedium★★

Q1: Enqueue (6 marks)

Identify: Prompt says "add an item to the circular queue" or "enqueue with wrap-around".

Method:

  1. Check if queue is full
  2. Update TailPointer with wrap
  3. Insert item
  4. Increment NumberOfItems

MS Pattern:

M1 Check if full (1 mark)
  • IF NumberOfItems = QueueSize THEN or equivalent
A1 Wrap TailPointer (1 mark)
  • TailPointer ← (TailPointer + 1) MOD QueueSize
  • Must use MOD, not manual IF
A1 Insert item (1 mark)
  • Queue[TailPointer] ← NewItem
A1 Increment NumberOfItems (1 mark)
  • NumberOfItems ← NumberOfItems + 1
A1 Output full message (1 mark)
  • Appropriate message when NumberOfItems == QueueSize
A1 Correct ENDIF, variable types (1 mark)
  • Proper structure and typed parameters

Traps:

  • ❌ Using TailPointer ← TailPointer + 1 without MOD — only gets M1, loses A1
  • ❌ Checking IF TailPointer == QueueSize THEN TailPointer = 0 — not accepted, must use MOD
  • ❌ Forgetting to increment NumberOfItems
  • ❌ Inserting item before wrapping TailPointer

Q2: Dequeue (6 marks)

Identify: Prompt says "remove an item from the circular queue" or "dequeue with wrap-around".

Method:

  1. Check if queue is empty
  2. Wrap HeadPointer
  3. Retrieve item
  4. Decrement NumberOfItems
  5. Return item

MS Pattern:

M1 Check if empty (1 mark)
  • IF NumberOfItems = 0 THEN or equivalent
A1 Wrap HeadPointer (1 mark)
  • HeadPointer ← (HeadPointer + 1) MOD QueueSize
A1 Retrieve item (1 mark)
  • Item ← Queue[HeadPointer]
A1 Decrement NumberOfItems (1 mark)
  • NumberOfItems ← NumberOfItems - 1
  • Must be after retrieval
A1 Return item (1 mark)
  • RETURN Item or equivalent output
A1 Output empty message (1 mark)
  • Appropriate message when NumberOfItems == 0

Traps:

  • ❌ Wrapping HeadPointer before checking empty — algorithm breaks
  • ❌ Returning item before decrementing — NumberOfItems out of sync
  • ❌ Using HeadPointer - 1 or wrong MOD direction

真题示例

ExamPaperQuestionType
9618/s25/qp/41Paper 4Q1Enqueue + Dequeue
9618/s23/qp/42Paper 4Q2Enqueue with wrap
复习建议

For each past paper, practice writing the full procedure from memory before checking the mark scheme. Pay special attention to the MOD operation — it is the single most common place to lose marks.