Abstract
We all are aware of the relevance of examining a task from diverse angles. We also are aware of the potential relevance of learning from one's mistakes. Yet computer science (CS) textbooks and teaching materials fall short in embedding these two notions. In this paper, we present an approach of elaborating divergent thinking in algorithm design, while capitalizing on erroneous solutions. Using a collected set of non-routine algorithmic tasks, we developed and applied a scheme of class activities, in which initial faulty solutions (due to novice tendencies) are carefully examined, and their falsifying inputs and characteristics are used for creative reasoning that yields fruitful outcomes. We present and illustrate our activities, refer to their cognitive aspects, and describe our experience with applying them in (an Introduction-to-Algorithms) class.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.