Linked Lists with C
What you'll learn
- Student will learn how to create and use linked lists in C by developing a library of functions.
Requirements
- Students should understand C programming., including dynamic memory allocation, typedef, and struct.
Description
In this course you will be taught through step-by-step live coding examples how to create and use a library of functions for working with Linked Lists in the C programming language!
Linked Lists are an important type of data structure in computer science and computer programming, so before we walkthrough how to create and use them, we'll also cover what Linked Lists are, how they work, and some practical applications of Linked Lists. The bulk of the course is spent on learning how to work with Linked Lists using C, with over 3 hours of video covering a series of common functionalities explaining step-by-step how they are implemented. We'll also teach you how to package your functions together into a re-usable library, and how to document your code.
By the end of the course you will have a C library of Linked List functions that will help you build a great programming portfolio!
Linked List functionalities that are covered include:
Creating a linked list
Inserting nodes on the head and tail of a linked list
Deleting nodes from the head and tail of a linked list
Sorting a linked list
Deleting matching nodes from a linked list
Deleting duplicate nodes from a linked list
Reversing a linked list
Duplicating a linked list
Determining if a value is in a linked list
...and many others, over 20 functions in total.
Who this course is for:
- Students interested in learning about data structures in C programming.
Instructor
At portfolio courses our goal is to help you build a portfolio of work that you can use to showcase your skills to potential employers, colleagues and clients.
It's great to have a "piece of paper", but nothing says you can do the job like real projects completed for your own fun and learning.
We'll be offering a suite of courses to allow you to grow your technical and soft skills while building an awesome portfolio of work.
Instructor:
Dr. Kevin Browne is a professor of computer science who teaches post-secondary level courses on systems programming, web development, software architecture, human-computer interaction, and many other subjects! Kevin has 20 years of teaching experience and has won a Teacher Award of Excellence.
Kevin is an experienced entrepreneur, as co-owner of a co-working space and technology consultancy, and was winner of Top 40 under 40 in Business in the Hamilton-Niagara region. Kevin is also a community organizer, having organized over 100 tech events (conferences, meetups, etc.) with over 4000 unique attendees, and winner of the "Difizen" of the Year award in Hamilton for community impact.
Kevin is very passionate about helping students to develop excellent work portfolios that will help them to get their dream jobs!
Kevin has a PhD in computer science from McMaster University, was a former fellowship holder at the IBM Centre for Advanced Studies, and currently teaches at both the community college and university-level.