Araştırma Makalesi

Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks

Cilt: 13 Sayı: 1 30 Haziran 2023
PDF İndir
EN

Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks

Öz

Interactive learning environments play a crucial role in facilitating effective education. Traditional approaches to teaching algorithm design techniques often lack interactivity, resulting in a limited learning experience. In this article, we propose the utilization of Jupyter Notebooks, renowned for their versatility in combining code, visualizations, and explanations, as a powerful tool for enhancing understanding and promoting an engaging learning experience in teaching algorithm design techniques. We provide a comprehensive structure for a Jupyter Notebook page, encompassing problem descriptions, brute force solutions, algorithm design techniques, application areas, and references, to present a thorough solution for computer science problems using these design techniques. Our study includes experiments conducted with computer science students, demonstrating the practical application of Jupyter Notebooks in algorithm design education. Furthermore, we share sample Jupyter Notebooks for popular algorithm design techniques, including Divide & Conquer, Greedy, Dynamic Programming, and Backtracking. Importantly, we emphasize the significance of interactive comparisons between brute force solutions and algorithm design techniques, which foster valuable learning opportunities by providing insights into performance improvements, complexity analysis, validation, optimization strategies, trade-offs, and a deeper understanding of algorithmic principles. In conclusion, we propose the integration of Jupyter Notebooks as a potent tool for teaching algorithm design approaches, empowering learners to actively engage with the material, visualize complex concepts, and collaborate effectively. By incorporating Jupyter Notebooks into algorithm design education, instructors can enhance students' comprehension, cultivate critical thinking skills, and facilitate a profound understanding of algorithmic principles and optimization strategies.

Anahtar Kelimeler

Kaynakça

  1. [1] Neapolitan, R., & Naimipour, K. (2010). Foundations of algorithms. Jones & Bartlett Publishers.
  2. [2] Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms. MIT press.
  3. [3] Yadav, A., Gretter, S., Hambrusch, S., & Sands, P. (2016). Expanding computer science education in schools: understanding teacher experiences and challenges. Computer science education, 26(4), 235-254.
  4. [4] Project Jupyter, https://jupyter.org/ (accessed Jun. 17, 2023).
  5. [5] Forišek, M., Steinová, M. (2013). Explaining Algorithms Using Metaphors. Springer Briefs in Computer Science. Springer, London. https://doi.org/10.1007/978-1-4471-5019-0_1.
  6. [6] Forišek, M., & Steinová, M. (2012, February). Metaphors and analogies for teaching algorithms. In Proceedings of the 43rd ACM technical symposium on Computer Science Education (pp. 15-20).
  7. [7] Castelo-Branco, R., Caetano, I., Pereira, I., & Leitão, A. (2020, November). The collaborative algorithmic design notebook. In Int. Conf. of the Architectural Science Association (pp. 1056-1065).
  8. [8] Ketcheson, D. I. (2014). Teaching numerical methods with IPython notebooks and inquiry-based learning. Proceedings of the 13th Python in Science Conference. Retrieved from http://hdl.handle.net/10754/346689.

Ayrıntılar

Birincil Dil

İngilizce

Konular

Bilgisayar Yazılımı, Yazılım Mühendisliği (Diğer)

Bölüm

Araştırma Makalesi

Erken Görünüm Tarihi

30 Haziran 2023

Yayımlanma Tarihi

30 Haziran 2023

Gönderilme Tarihi

27 Haziran 2023

Kabul Tarihi

30 Haziran 2023

Yayımlandığı Sayı

Yıl 2023 Cilt: 13 Sayı: 1

Kaynak Göster

APA
Topsakal, O. (2023). Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks. European Journal of Technique (EJT), 13(1), 1-6. https://doi.org/10.36222/ejt.1320404
AMA
1.Topsakal O. Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks. EJT. 2023;13(1):1-6. doi:10.36222/ejt.1320404
Chicago
Topsakal, Oguzhan. 2023. “Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks”. European Journal of Technique (EJT) 13 (1): 1-6. https://doi.org/10.36222/ejt.1320404.
EndNote
Topsakal O (01 Haziran 2023) Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks. European Journal of Technique (EJT) 13 1 1–6.
IEEE
[1]O. Topsakal, “Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks”, EJT, c. 13, sy 1, ss. 1–6, Haz. 2023, doi: 10.36222/ejt.1320404.
ISNAD
Topsakal, Oguzhan. “Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks”. European Journal of Technique (EJT) 13/1 (01 Haziran 2023): 1-6. https://doi.org/10.36222/ejt.1320404.
JAMA
1.Topsakal O. Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks. EJT. 2023;13:1–6.
MLA
Topsakal, Oguzhan. “Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks”. European Journal of Technique (EJT), c. 13, sy 1, Haziran 2023, ss. 1-6, doi:10.36222/ejt.1320404.
Vancouver
1.Oguzhan Topsakal. Enhancing Algorithm Design Education: Interactive Learning with Jupyter Notebooks. EJT. 01 Haziran 2023;13(1):1-6. doi:10.36222/ejt.1320404

Cited By