Reversing a List Property 1

reverse of xs = reverse of remaining stack xs and already reversed stack [ ]

This property says that we can reverse a list by tracking two lists:

  • A list of elements already reversed ("reversed").
  • A list of elements that we haven't reversed yet ("remaining").

Initially, "reversed" is empty, because we haven't reversed any elements yet. Similarly, "remaining" is just xs.

Other properties will pop elements from "remaining" and prepend it to "reversed," one element at a time.

Examples

reverse of [ 1, [ 2, [ 3, [ ] ] ] ] = reverse of remaining stack [ 1, [ 2, [ 3, [ ] ] ] ] and already reversed stack [ ]

reverse of [ 7, [ 3, [ ] ] ] = reverse of remaining stack [ 7, [ 3, [ ] ] ] and already reversed stack [ ]

reverse of [ 15, [ 28, [ 9, [ 11, [ ] ] ] ] ] = reverse of remaining stack [ 15, [ 28, [ 9, [ 11, [ ] ] ] ] ] and already reversed stack [ ]

Quiz (1 point)

Please fill in the blank:

(reverse of [10,[5,[]]] = reverse of remaining list [10,[5,[]]] and already reversed list _____

Become a subscriber to save your progress, see the correct answer, and more!

Comments

Please log in to add comments