Learn Data Structures using C Programming Language
4.2 (48 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
350 students enrolled

Learn Data Structures using C Programming Language

Hands-on course with exercises on arrays, stacks, queues, linked list, trees, graphs, internal sorting techniques, etc.
4.2 (48 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
350 students enrolled
Created by Gayatri TR
Last updated 4/2020
English
English [Auto-generated]
Current price: $93.99 Original price: $134.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9 hours on-demand video
  • 74 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Understand the fundamentals of Data Structures thoroughly through hands-on coding
  • Learn to analyze programs
  • Learn to see a bigger picture of design of algorithms in general
Requirements
  • You should have a basic knowledge of C Programming Language
  • You should have access to a C compiler
Description

Noteworhy reviews :

Szu-Fan Wang: "I love the practice codes a lot. Thanks instructor!"

Alberto San Martin: "It is a very clear professor. Good explanations."

This course aims to teach the fundamental concepts of data structures in a step by step manner. As the first instalment of the course, the topics such as arrays, stacks and queues, linked lists, trees, graphs, and internal sorting techniques are covered. The remaining topics such as external sorting, symbol tables, and files will be included in the same course on a regular basis. 

Programming is not just about learning a language and starting to write programs like stories. One has to learn certain concepts that are fundamental to computer science in general. That is why this course is a must for all the self-motivated wannabe code ninjas of future. The concepts here are explained slowly and clearly. 

The highlight of the course is the meticulously planned coding exercises. Though the concepts are explained quite elaborately in the lectures, with ample illustrations and animations, the student will not be spoon-fed with coding solutions right on the screen. Instead, they will be required to complete pieces of code that are available for download, as part of each exercise. So, the lectures and coding exercises are inseparable. There are also quizzes interspersed with the lectures, some of which might help you think differently.

On the overall, the course aims to  provide a heady mix of  ease of listening to the lectures and the rigour of do-it-yourself coding exercises, hopefully making it a wholesome knowledge gaining experience. 

If you didn't feel any change, please do remember that you can get your money back, as there is a 30-day money-back guarantee.
 

Who this course is for:
  • Anyone who wants to become a great programmer, not just a mediocre programmer
  • Anyone who wants to strengthen one's basics in Computer Science
Course content
Expand all 90 lectures 08:49:25
+ Introduction to Data Structures
2 lectures 13:31
Why study Data Structures and What is a Data Structure
02:12
The Big-O notation for representation of performance measure of algorithms
11:19
+ Arrays : An Introduction
3 lectures 15:30
The definition of an array
03:30
Array limits
02:08
Element addressing in an array
09:52
+ An application of arrays: Fast Transpose of a Sparse Matrix
5 lectures 26:24
Introduction to Sparse Matrix Transpose
02:16
Sparse matrix representation in a program
03:13
First attempt at sparse matrix transpose: A crude solution
04:19
Second attempt at sparse matrix transpose: A simple solution
07:49
Third and final attempt: Fast Transpose of a Sparse Matrix
08:47
+ Stack functionalities
2 lectures 07:32
Stack functionalities and "push" function
04:03
"pop" function in Stacks
03:29
+ An application of stacks: A Mazing Problem
5 lectures 33:51
Stacks in Procedure Calls and Recursion
06:21
Introduction to A Mazing Problem
06:26
Recursive solution to A Mazing problem: A partial solution
07:15
Recursive solution to A Mazing problem: A full solution
06:22
Non-recursive solution to A Mazing Problem
07:27
+ Queue functionalities
2 lectures 13:25
Queue definitions and Linear Queue
06:40
Circular Queue
06:45
+ Linked Lists
8 lectures 40:32
Why do we need linked lists?
05:20
What is a linked list?
04:31
Creation of a linked list
03:38
Insertion of a new node in between two nodes in a singly linked list
06:00
Insertion of a new node at the corners in a singly linked list
03:10
Deletion of a node in a singly linked list
04:45
Inplace reversal of a singly linked list
04:40
Insertion and deletion of a node in a doubly linked list
08:28
+ Trees : An Introduction
1 lecture 06:12
Terms associated with Tree data structure
06:12