We show that algorithmic thinking is a key ability in informatics that can be developed independently from learning programming. For this purpose we use problems that are not easy to solve but have an easily understandable problem definition. A proper visualization of these problems can help to understand the basic concepts connected with algorithms: correctness, termination, efficiency, determinism, parallelism, etc. The presented examples were used by the author in a pre-university course, they may also be used in secondary schools to help understanding some concepts of computer science.


Basic Action Sorting Algorithm Combinatorial Explosion Left Neighbor Algorithmic Thinking 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Propädeutikum in Informatik (prolog), Lessons held at Vienna University of Technology, http://www.informatik.tuwien.ac.at/prolog
  2. 2.
    Loidl, S., Mühlbacher, J., Schauer, H.: Preparatory Knowledge: Propaedeutic in Informatics. In: Mittermeir, R.T. (ed.) ISSEP 2005. LNCS, vol. 3422, pp. 104–115. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Snyder, L., Interview by Olsen, F.: Computer Scientist Says all Students Should Learn to Think ’Algorithmically’. The Chronicle of Higher Education (May 5, 2000), http://chronicle.com/free/2000/03/2000032201t.htm/
  4. 4.
    Mudner, T., Shakshuki, E.: A new Approach to Learning Algorithms. In: Proceedings of International Conference on Information Technology: Coding and Computing, pp. 141–145 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Gerald Futschek
    • 1
  1. 1.Institute of Software Technology and Interactive SystemsVienna University of TechnologyViennaAustria

Personalised recommendations