{"title":"Students’ difficulties with inserting and deleting nodes in a singly linked list in the C programming language","authors":"Eman Almadhoun, Jennifer Parham-Mocello","doi":"10.1016/j.cola.2022.101184","DOIUrl":null,"url":null,"abstract":"<div><p>Since linked lists serve as a bridge to understanding more advanced data structures, we believe that it is critical to identify students’ misunderstandings early. We found that students had a good conceptual understanding of how to insert and delete nodes in a singly linked list in C. However, many students continued to struggle with C syntax, pointer manipulation, and memory management needed to correctly implement singly linked lists. Students reported that the abstract nature of pointers, relating linked lists to the real world, and prior knowledge about dynamic arrays contributed the most to their difficulties with linked lists in C.</p></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"74 ","pages":"Article 101184"},"PeriodicalIF":1.7000,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Computer Languages","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S2590118422000818","RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
Since linked lists serve as a bridge to understanding more advanced data structures, we believe that it is critical to identify students’ misunderstandings early. We found that students had a good conceptual understanding of how to insert and delete nodes in a singly linked list in C. However, many students continued to struggle with C syntax, pointer manipulation, and memory management needed to correctly implement singly linked lists. Students reported that the abstract nature of pointers, relating linked lists to the real world, and prior knowledge about dynamic arrays contributed the most to their difficulties with linked lists in C.