Main Article Content


Computational complexity is regarded by many Computer Science students as extremely difficult and as a topic to be avoided. However, the concepts of an algorithm and of computational complexity as a means of characterising the resource consumption of algorithms are fundamental in Computer Science and are included in all curricula for it. To better motivate students and to increase their interest in computational complexity, this paper suggests introducing it by examining algorithms, a.k.a. recipes, for making noodles. This paper describes several traditional algorithms for making Chinese and Italian noodles and classifies each according to its computational complexity. It compares the power of the algorithms. It considers the nature of variations of the traditional algorithms. It examines machines that implement some of the algorithms. It cites a world speed record for making a large number of noodles using the algorithm with the maximal complexity. It shows how computational thinking and other topics can be introduced in the same manner. It concludes by mentioning avenues for further studies.


Algorithms Complexity

Article Details

Author Biographies

Luisa Mich, University of Trento

Department of Industrial Engineering, Associate professor

Daniel M. Berry, University of Waterloo

Cheriton School of Computer Science
How to Cite
Mich, L., & Berry, D. M. (2019). A Gentle Introduction to Computational Complexity Through an Examination of Noodle Making. Journal of E-Learning and Knowledge Society, 14(3).