Section outline

  • Algorithmics and the C language allow for the creation of custom types or structures from basic types, known as data structures, as explored in the first semester. While the variables declared with these types define both the nature of values and memory space, they remain static variables, allocated during compilation with a fixed size. However, arrays, the simplest static data structures, can be limiting, lacking flexibility for dynamic resizing or element manipulation. Fortunately, dynamic data structures, including linked lists, offer solutions.

    In this chapter we delve into the fundamental model of linked lists, which provide a more flexible approach to organizing data in memory. Linked lists are closely related to pointers and dynamic memory allocation, essential concepts addressed prior to exploring linked lists.

    • The first part of the course materials for Chapter 3 in English, available in PDF format. 

      This document is formatted for double-sided printing, 2 pages per sheet.

    • This file serves as the material for Tutorial Series No. 3, focusing on Pointers and Linked Lists. Aligned with the concepts introduced in Lecture No. 3, this series serves as a practical application, reinforcing the knowledge gained in class. It comprises a set of 9 exercises designed to provide hands-on experience and a deeper understanding of the intricacies of Pointers and Linked Lists.

    • This document presents the standard solutions  for Tutorial Series No. 3 on Pointers and Linked Lists.

    • Welcome to this lab sheet on pointers and linked lists in the C programming language. Pointers and linked lists are fundamental concepts that play a crucial role in many computer science applications, particularly in data structures and memory management.

      Throughout this lab sheet, we will delve into the intricacies of pointers and linked lists, exploring their usage, implementation, and practical applications.

      This document is designed to be interactive and hands-on. You will encounter a series of examples and exercises carefully crafted to reinforce your understanding and proficiency in working with pointers and linked lists.

      By the end of this session, you will have gained a solid understanding of these concepts and be equipped with the skills to employ them effectively in your programming endeavors.

      This document is formatted for double-sided printing, 2 pages per sheet.

    • This document presents the standard solutions  for Lab Sheet No. 3 on Pointers and Linked Lists, offering detailed guidance and examples for mastering Pointers and Linked Lists handling techniques in C programming.

    • I am pleased to share with you a series of additional exercises on linked lists that I have prepared. This collection comprises 30 exercises covering a wide range of concepts and difficulty levels. Each exercise is accompanied by its solution, presented in both pseudo-code and the C programming language. These exercises have been carefully designed to offer a more in-depth exploration of linked list concepts beyond those covered in our classroom sessions.

      It is important to emphasize that these exercises serve as supplementary material and in no way serve as a substitute for the course handouts and educational resources provided in the classroom. They are intended for individual work at home, providing an opportunity for you to further enhance your understanding and proficiency in linked list manipulation.