The solution of an algorithmic task requires rigorous insight, based on the task’s characteristics. Problem solvers seek insight in diverse ways, from different points of view. Experts usually seek a global, assertional perspective. Such a perspective is not natural to many novices, who often turn to local viewpoints. However, such points of view may yield erroneous outcomes. This study displays three different facets of novices’ improper local points of view. The three facets involve local substructures, greedy traps, and unsuitable design patterns. Novices’ erroneous solutions to three colorful tasks are described and analyzed, in comparison with the desired solutions, and suggestions are made for elaborating student awareness of the need for a global, rigorous point of view in algorithmic problem solving.


Local Point Design Pattern Greedy Approach Local View Local Substructure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Astrachan, O., Berry, G., Cox, L., Mitchener, G.: Design Patterns: an Essential Component of CS Curricula. In: Proceedings of the 28th SIGCSE Symposium, pp. 153–160. ACM Press, New York (1998)Google Scholar
  2. 2.
    Borasi, R.: Reconceiving Mathematics Instruction: A Focus on Errors. Ablex Pub., Greenwich (1996)Google Scholar
  3. 3.
    Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press, Massachusetts (1991)Google Scholar
  4. 4.
    Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)zbMATHGoogle Scholar
  5. 5.
    Dijkstra, E.W., et al.: A Debate on Teaching Computing Science. Communications of the ACM 32, 1397–1414 (1989)CrossRefGoogle Scholar
  6. 6.
    Gama, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)Google Scholar
  7. 7.
    Ginat, D.: Loop invariants, Exploration of Regularities, and Mathematical Games. Int. J. of Mathematical Education in Science and Technology 32 (2001)Google Scholar
  8. 8.
    Ginat, D.: Embedding Instructive Assertions in Program Design. In: Proceedings of the 9th ITiCSE Conference, pp. 62–66. ACM Press, New York (2004)Google Scholar
  9. 9.
    Ginat, D.: Mathematical Operators and Ways of Reasoning. The Mathematical Gazette, 7–14 (2005)Google Scholar
  10. 10.
    Gries, D.: The Science of Programming. Springer, Heidelberg (1981)zbMATHGoogle Scholar
  11. 11.
    Schoenfeld, A.: Learning to Think Mathematically: Problem Solving, Metacognition, and Sense Making in Mathematics. In: Grouws, D.A. (ed.) Handbook of Research on Mathematics Teaching and Learning, pp. 334–370. Macmillan, Basingstoke (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • David Ginat
    • 1
  1. 1.CS Group, Science Education DepartmentTe-Aviv UniversityTel-AvivIsrael

Personalised recommendations