Abstract

Reduction is a fundamental computer science (CS) notion (Schwill, 1994). In solving reduction tasks one must think at the problem level, in order to recognize suitable correlations between problems. Thinking at the problem level involves recognition of declarative features of problems. This requires a high level of abstraction. Reduction is well apparent in the more advanced stages of CS studies, but it is also relevant at earlier stages. It may serve as an important means for practice and awareness of abstraction. We designed reduction tasks for the earlier tutoring and training of algorithms students. Our designs are illustrated with three creative tasks of different characteristics. Student solutions for each task are presented and discussed. The students demonstrated different levels of abstraction, insight and flexibility in solving the tasks.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call