Skip to content
UdemyData Structures and AlgorithmsPaid courseIntermediate levelCertificate

Data Structures And Algorithms In The C Programming Language (Udemy.com)

Linked Lists, Array Lists, Stacks, Queues, Trees the lot!

Created by: Daniel McCarthy

Last updated June 2025

icon
What you will learn

  • Linked Lists
  • Double Linked Lists
  • Arrays
  • Array List
  • Creating a stack
  • Creating a queue
  • Binary trees

How it compares

Against the other 86 rated Udemy courses in Data Structures and Algorithms on CourseDuck:

  • Rating4.5 out of 5higher than 46% of them
  • Reviews162#59 of 87 by number of reviews
  • Length2.7 hoursshorter than 89% of them
  • Last updatedJune 2025more recently than 69% of them

icon
Course Description

Are you a great programmer? Prove it with this course. It is time that you learn how memory works on the processor and in the C programming language  to work with C structures to make linked lists, arrays, queues and more!

This course will teach you all about creating internal data structures in C.

This course will teach you how to create the following:

Linked List Implementation

In our linked list implementation you will learn how we can use C pointers to link elements together in a chain

Double Linked List Implementation

In our double linked list implementation you will learn how you can use a previous pointer in an element to be able to iterate backwards through a linked list. This is called a double linked list.

Array List Implementation

Our array list implementation will allow us to add elements to a dynamic array, resizing it when needed.

Queue Implementation

Learn about first in last out techniques in our queue implementation.

Stack Implementation

Learn how to create a stack where you will be able to add an element to a stack and then take it off the stack later. That is why its called a stack!

Binary Tree Implementation

Learn how to create binary trees and why they are important.


All of the implementations described above will be created on video from scratch! You will learn how all of these work internally and when they should be used. This course is a "must have" for someone who has learned the fundamentals of the C Programming Language

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Daniel McCarthy

Daniel McCarthy is a seasoned software engineer with more than 20 years of experience. Armed with a Master’s in Advanced Computer Science from Cardiff Metropolitan University, he has worked on everything from web applications to sophisticated compiler and kernel architecture.

A specialist in bootloader and kernel development, Daniel created two proprietary programming languages—Craft, a general-purpose language, and Marble, a web-centric language similar to PHP—and has built multiple C compilers from the ground up.

Fluent in C, C++, Java, x86 and PIC assembly, SQL, PHP, HTML5, JavaScript, CSS, and his own Craft and Marble, he has also authored production-grade Linux kernel modules.

Today, Daniel teaches kernel and compiler development to thousands of students worldwide, channeling his decades of expertise into mentoring the next generation of professional software engineers.

icon
More courses by Daniel McCarthy

$54.99

icon
More Data Structures and Algorithms courses

Free

$119.99

Free

$99.99

$109.99

$84.99

icon
Reviews

4.5

162 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Paul Warkentin on 5/9/2025

This is a good course if you have already a basic understanding of C and want to understand the algorithms for data structures a little better or if you are struggling with pointers and want to have a much better understanding of them, it would be good to take his previous course on beginning C programming as well in that regard as they both build upon each other. That being said there are a lot of algorithms and a lot of different ways to build them, and only so much time to learn them so Daniel gives a pretty good summary of the basics of the fundamental algorithms. This is my second course with him and he does a good job of delivering the information well, and explaining it so you can grasp it. If English is your first language and you struggle with thick accents like I do, Daniel is perfect to learn from. He has deep knowledge of what he is talking about because of his experience and it shows in his code demonstrations. This course was what I was looking to take so I could better tackle the problem I am currently stuck on in CS50, which is the week 5 problem of a spell checker. I have been able to get a grasp on what data structure type I need to do and a general idea of how to build it in order to accomplish that task. I really enjoy Daniel's courses and will be referencing back to them when needed. Thanks a lot for the help in advancing my skill set further. It's very encouraging to see how far I've come along since I started learning programming a few months ago.

By Jeff Wagner on 3/24/2024

Good and quick overview, lacking a bit of in-depth explanations like rebalancing trees and types of trees etc.

By Ajay Sanjay Barge on 1/24/2024

Data structure programing is very good for all topics. increase my programing knowledge and concept.

By Aigerim Tulegenova on 7/4/2021

Everything is fine, this course has given me good starting point, but I had an impression that the course is not completed. For example, binary search tree is only generally explained. Inserting and removing nodes are missed.

By Patrick Divine on 6/11/2021

Dan is brilliant. This is a great introduction to data structures in C. Dan explains things in a clear, to-the-point way, which is much appreciated. Thank you, Dan

By Evander on 5/4/2021

This course is average and the instructor voice is clear. Can take this one when you want to learn basics of DSA

By Traiano Welcome on 3/28/2021

Well explained. I like the hands-on approach as well as detailed explanation during the process.

By Susanna Capacchione on 1/15/2021

Nice course to get a well explained refresh of data structures if you have some knowledge of C language! Would be nice to also have the boilerplate of the code written during the videos

By Aaryan Dubey on 11/28/2020

the instructor should more briefly explain how the things are happening as it is difficult for a beginner to understand things so rapidly.

By Scott Mandel on 2/13/2020

This is a fantastic course. I appreciate how the instructor presents the theory and then moves directly into a demonstration of how that theory looks in a C program. The C program is built in such a way that there is time to follow the process and see how the components work. A major advantage of this type of course presentation is that the lesson can be stopped and the C program studied. Once everything is understood, the student is free to proceed with a greater degree of confidence. Comprehension is enhanced by working with the instructor to write the program as he types it in and explains the purpose of each command. Overall, a most worthwhile course taught by a gifted instructor.

Showing all 10 reviews on CourseDuck

Read all 162 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 90 / 100