Abstract
Since 1980, I have taught almost every year an elementary course on algorithms and data structures, first for the third and later for the second semester. The first perfor-mances - in PL/I times - were heavily based on [5]. Later the course became increasingly independent of any single textbook, and now makes use of a large number of sources, including, of course, the author’s proper experiences. Nevertheless, my course is still very standard. It is known that many mathematics teachers at elementary schools get bored presenting the same proven stuff over the years, and more and more, therefore, teach “exotic” alternatives, in general not in favor of the students. This is a phenomenon I have always tried to avoid. Still I think that the elementary textbooks on algorithms and data structures have become too canonical too quickly, and that certain ways of presentation and also of selecting the contents are not as justified as they seem to be. In the following, I state some very personal observations which have arisen from the many performances of my standard course, in the hopes of challenging a little the textbook authors and teachers of algorithms and data structures. Each one of my 10 observations is concluded by a short statement put in a box and intended as kind of a summary and accentuation.
Thomas Ottmann is not only a renowned researcher in algorithms and data structures, but also a prominent innovator in teaching them to students of all levels. I am very pleased to dedicate this small contribution to him.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abelson, H., Sussman, G.J., Sussman, J.: Structure and Interpretation of Computer Programs. 2nd Edition. MIT Press 1996.
Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison-Wesley 1974.
Aho, A.V., Hopcroft, J.E., Ullman, J.D.: Data Structures and Algorithms. Addison-Wesley 1983.
Aigner, M., Ziegler, G.M.: Proofs from the BOOK. 2nd Edition. Springer 2001.
Augenstein, M.J., Tenenbaum, A.M.: Data Structures and PL/I Programming. Prentice-Hall 1979.
de Berg, M., van Kreveld, M., Overmars, M., Schwarzkopf, O.: Computational Geometry-Algorithms and Applications. 2nd Edition. Springer 2000.
Bieri, H., Grimm, F.: Datenstrukturen in APL2-Mit Anwendungen aus der Künstlichen Intelligenz. Springer 1992.
Budd, T.A.: Data Structures in C++ Using the Standard Template Library. Addison-Wesley 1998.
Computing Curricula 2001 (CC2001). Steelman Report. IEEE Computer Society/ACM 2001.
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press, 1990.
Guha, R.K., Yeh, R.T.: A Formalization and Analysis of Simple List Structures. In R.T. Yeh (Ed.): Applied Computation Theory, 150–182. Prentice-Hall 1976.
Hirvensalo, M.: Quantum Computing. Springer 2001.
Knuth, D.E.: Big omicron and big omega and big theta. SIGACT News, Vol. 8, 18–24 (1976).
Knuth, D.E.: The Art of Computer Programming. Volumes 1–3. Addison-Wesley 1998.
Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann 1997.
Mehlhorn, K., Näher, S.: LEDA-A Platform for Combinatorial and Geometric Computing. Cambridge University Press 2000.
Munakata, T.: Fundamentals of the New Artificial Intelligence-Beyond Traditional Paradigms. Springer 1998.
Ottmann, T. (Hrsg.): Prinzipien des Algorithmenentwurfs. Spektrum Akademischer Verlag 1998.
Ottmann, T., Widmayer, P.: Algorithmen und Datenstrukturen. 4. Auflage. Spektrum Akademischer Verlag 2002.
Polya, G.: How to Solve It. 2nd Edition. Princeton University Press 1957.
Rohl, J.S.: Recursion via Pascal. Cambridge University Press 1984.
Saake, G., Sattler, K.-U.: Algorithmen und Datenstrukturen-Eine Einführung mit Java. dpunkt.verlag 2002.
Sedgewick, R.: Algorithms. Addison-Wesley 1983.
Wegner, P.: Why Interaction Is More Powerful Than Algorithms. Communications of the ACM 40 (5), 80–91 (1997).
Wirfs-Brock, R., Wilkerson, B., Wiener, L.: Designing Object-Oriented Software. Prentice-Hall 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Bieri, H. (2003). Teaching Algorithms and Data Structures: 10 Personal Observations. In: Klein, R., Six, HW., Wegner, L. (eds) Computer Science in Perspective. Lecture Notes in Computer Science, vol 2598. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36477-3_4
Download citation
DOI: https://doi.org/10.1007/3-540-36477-3_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00579-7
Online ISBN: 978-3-540-36477-1
eBook Packages: Springer Book Archive