# Data Structures – Full Course Using C and C++

August 12, 2024 2024-08-12 3:32## Data Structures – Full Course Using C and C++

Learn about data structures in this comprehensive course. We will be implementing these data structures in C or C++.

You should have a good understanding of pointers in C. If you need to learn about pointers, watch this course: https://www.youtube.com/watch?v=zuegQmMdy8M

✏️ Course developed by Harsha and Animesh from MyCodeSchool.

🔗 Read all about their amazing story here: https://www.freecodecamp.org/news/mycodeschool-youtube-channel-history/

🔗 Check out the MyCodeSchool channel: https://www.youtube.com/user/mycodeschool

🔗 Check out the MyCodeSchool website: http://mycodeschool.com/

⭐️ Course Contents ⭐️

⌨️ (0:00:00) Introduction to data structures

⌨️ (0:06:33) Data Structures: List as abstract data type

⌨️ (0:19:40) Introduction to linked list

⌨️ (0:36:50) Arrays vs Linked Lists

⌨️ (0:49:05) Linked List – Implementation in C/C++

⌨️ (1:03:02) Linked List in C/C++ – Inserting a node at beginning

⌨️ (1:15:50) Linked List in C/C++ – Insert a node at nth position

⌨️ (1:31:04) Linked List in C/C++ – Delete a node at nth position

⌨️ (1:43:32) Reverse a linked list – Iterative method

⌨️ (1:57:21) Print elements of a linked list in forward and reverse order using recursion

⌨️ (2:11:43) Reverse a linked list using recursion

⌨️ (2:20:38) Introduction to Doubly Linked List

⌨️ (2:27:50) Doubly Linked List – Implementation in C/C++

⌨️ (2:43:09) Introduction to stack

⌨️ (2:51:34) Array implementation of stacks

⌨️ (3:04:42) Linked List implementation of stacks

⌨️ (3:15:39) Reverse a string or linked list using stack.

⌨️ (3:32:03) Check for balanced parentheses using stack

⌨️ (3:46:14) Infix, Prefix and Postfix

⌨️ (3:59:14) Evaluation of Prefix and Postfix expressions using stack

⌨️ (4:14:00) Infix to Postfix using stack

⌨️ (4:32:17) Introduction to Queues

⌨️ (4:41:35) Array implementation of Queue

⌨️ (4:56:33) Linked List implementation of Queue

⌨️ (5:10:48) Introduction to Trees

⌨️ (5:26:37) Binary Tree

⌨️ (5:42:51) Binary Search Tree

⌨️ (6:02:17) Binary search tree – Implementation in C/C++

⌨️ (6:20:52) BST implementation – memory allocation in stack and heap

⌨️ (6:33:55) Find min and max element in a binary search tree

⌨️ (6:39:41) Find height of a binary tree

⌨️ (6:46:50) Binary tree traversal – breadth-first and depth-first strategies

⌨️ (6:58:43) Binary tree: Level Order Traversal

⌨️ (7:10:05) Binary tree traversal: Preorder, Inorder, Postorder

⌨️ (7:24:33) Check if a binary tree is binary search tree or not

⌨️ (7:41:01) Delete a node from Binary Search Tree

⌨️ (7:59:27) Inorder Successor in a binary search tree

⌨️ (8:17:23) Introduction to graphs

⌨️ (8:34:05) Properties of Graphs

⌨️ (8:49:19) Graph Representation part 01 – Edge List

⌨️ (9:03:03) Graph Representation part 02 – Adjacency Matrix

⌨️ (9:17:46) Graph Representation part 03 – Adjacency List

—

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

source

## Comments (48)

## @riyapatel9669

This is so so so great ill be very grateful to you sir its an amazing thing on the the youtube for a students like me im having an interview tomorrow and all i needed was this !!

## @ironmonkey1990

Thank you

## @ananyabhagat7052

I'm midway to this course and just found out the coder teaching this is no more. My respect to him and his vast knowledge he left behind. He was taken too soon, he would've imparted so much more precious knowledge if he was here. Rest in Peace!

## @ramanbodh11d12

AFTER THIS ,WHAT IS THE NEXT STEP???

## @trakra9959

God Bless you. I went from knowing nothing but arrays to understanding and using six different data structures. This took me a little more than two weeks. I wish you the very best, thank you so much for putting this out for free.

## @AS-wi6hr

this guy's accent is on my nerves … specially *a*rray …

## @Tosin226

9:00

## @shreyaporwal

This is my code school, i recognise his voice ❤

## @user-zu1yn5ef2b

how to I done my python programming language

## @simon-gh1pt

Best data structure course on youtube

🙂

## @nandiniverma1238

is the whole data structure and algorithm part civered?

*covered

## @forheuristiclifeksh7836

9:39:00

## @forheuristiclifeksh7836

9:04:00

## @forheuristiclifeksh7836

3:36:00 Unbalanced parenthesis checking

## @forheuristiclifeksh7836

3:15:21

## @LakshmiPriya-co7eb

Where's the subtitles 😭 i hope I will understand the video without subtitles 😢

## @forheuristiclifeksh7836

2:32:50temp->data=x; temp*(data)=x

## @dabunnisher29

I wanted to better myself with this video and then I start to read the comments and found out he passed away. Now his voice seems even more important. I wish peace for his family.

## @forheuristiclifeksh7836

1:12:47

## @forheuristiclifeksh7836

37:00 array vs Linkedlist

## @forheuristiclifeksh7836

9:41:38 struct node *A[8]

## @forheuristiclifeksh7836

9:18:30

## @forheuristiclifeksh7836

9:13:00 Adjaecency matrix

## @forheuristiclifeksh7836

8:53:00 Edge list

## @forheuristiclifeksh7836

8:20:37 G=(v,e)

## @forheuristiclifeksh7836

8:18:57

## @forheuristiclifeksh7836

8:15:00 8:16:00

## @forheuristiclifeksh7836

6:09:55

## @forheuristiclifeksh7836

5:25:26 struct Node{int data; Node* left; Node* right;};

## @forheuristiclifeksh7836

5:05:40 Queue Linked list implementation

## @forheuristiclifeksh7836

3:05:00 Stack linkedlist emplementaton

## @forheuristiclifeksh7836

2:44:40 stack..Towwerofhanoi

## @forheuristiclifeksh7836

3:00

## @forheuristiclifeksh7836

1:54:00

## @forheuristiclifeksh7836

1:20:00 Linkedlist(

1:42:00 temp-> points next node

## @jisanjim423

best….❤

## @farrelledric

8:28:13

## @LeelaseshuKumar

I am sure, no one can replace him in this era.

This is my second time watching this complete video.

🙏🙏🙏🙏🙏

## @JoaoGranvile

Que cara bom!

## @butterfly-mh5wt

may we meet again

## @tsunningwah3471

mmm

## @tsunningwah3471

lknklnklklnlknklnlknlknkllknlknlklknnlknnlk

## @salihozdemr

54:00 Creating new node and Memory Allocation || Traversing via temp = head in order to avoid head loss.

1:07:46 Inserting a node to begining and Updating Head

1:13:12 Global and Local Head differences and necesary function arrangements

1:14:52 Passing head by reference in a function || avoiding assign head in main func

1:19:09 Inserting element by position logic and steps

## @kadekchandra1300

1:21:06

## @Phoenix-pk7uc

I don't know why but I find your videos very dissatisfying and not relatable at all. Teaching is most about being relatable. The more relatable you are the more you get acceptance. And showing two languages at the same time is pretty confusing.

## @MaxxRandom

How can i get the notes

## @pedroluiz3179

whats the difference between do

struct Node* head; and

Node* head = new Node();

?

## @BlakeSekelsky99

RIP, goated teacher