Data Structures and Algorithms in C
4.3 (69 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
450 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Data Structures and Algorithms in C to your Wishlist.

Add to Wishlist

Data Structures and Algorithms in C

The most detailed course with in-depth explanations of concepts and implementation
4.3 (69 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
450 students enrolled
Last updated 9/2016
English
Current price: $10 Original price: $20 Discount: 50% off
1 day left at this price!
30-Day Money-Back Guarantee
Includes:
  • 10 hours on-demand video
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Over 100 Quiz questions
  • Ability to analyse algorithms
  • Knowledge of basic Data Structures and various sorting algorithms
  • Ability to write and trace recursive algorithms
  • Ability to write programs for different Data Structures and Algorithms
  • Confidence to face programming interviews
View Curriculum
Requirements
  • Basic knowledge of programming in any language
Description

This is a thoroughly detailed course that uses lots of animations to help you visualize the concepts.


This course will help you develop a strong background in Data Structures and Algorithms. The course is broken down into easy to assimilate short lectures, and after each topic there is a quiz that can help you to test your newly acquired knowledge. The examples are explained with animations to simplify the learning of this complex topic. Complete working programs are shown for each concept that is explained.

This course provides a comprehensive explanation of data structures like linked lists, stacks and queues, binary search trees, heap. Various sorting algorithms with implementation and analysis are included. Concept of recursion is very important for designing and understanding certain algorithms so the process of recursion is explained with the help of several examples.

Throughout the course, a step by step approach is followed to make you understand different Data Structures and Algorithms. Through this course you can build a strong foundation in Data Structures and Algorithms that can help you to crack coding interviews and work in the industry.

In this course, C language is used for implementing various Data Structures and Algorithms, but you can easily implement them in any other language like C++, C#, Java, Python.

Who is the target audience?
  • Programmers looking for jobs
  • Programmers wanting to write efficient code
  • Computer Science students having Data Structures as part of their curriculum
  • Non Computer science students wanting to enter IT industry
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 148 Lectures Collapse All 148 Lectures 10:14:02
+
Introduction
1 Lecture 01:36
+
Introduction to Data structures and Algorithms
12 Lectures 44:11
Data Structures and Algorithms
04:20

Measuring Running time of Algorithms
03:06

Asymptotic Analysis
03:14

Big O Notation
03:40

Finding Big O
04:24

Tight and Loose Upper Bounds
01:29

Introduction Quiz A
10 questions

Big O analysis of Algorithms
02:05

Finding Time Comlexity
02:57

Big O analysis of Algorithms: Examples
06:59

Worst case, Best case and Average Case Analysis
03:49

Common Complexities
03:03

Abstract Data Types
05:05

Introduction Quiz B
11 questions
+
Linked List
21 Lectures 01:41:54
Introduction
04:57

Traversing and Searching a Single Linked List
05:17

Finding pointers in a single linked list
05:12


Insertion in a Single Linked List..contd
07:37

Deletion in a Single Linked List
03:56

Reversing a Single Linked List
02:12

Linked List Quiz A
10 questions

Doubly linked list
03:03

Insertion in a doubly linked List
06:34

Deletion from doubly linked list
03:37

Reversing a doubly linked list
02:32

Circular linked list
02:19

Insertion in a circular Linked List
03:13

Deletion in a circular linked list
02:15

Concatenation
03:03

Linked List with Header Node
05:45

Sorted linked list
04:31

Merging of sorted Linked lists
09:47

Sorting a Linked list using Bubble Sort
07:24

Sorting a Linked list using Merge Sort
03:28

Finding and Removing a cycle in a Linked list
09:58

Linked List Quiz B
8 questions
+
Stack and Queue
17 Lectures 01:16:02
Introduction
02:09

Stack
01:29

Array Implementation of Stack
04:59

Linked List Implementation of Stack
03:57

Queue
01:13

Array Implementation of Queue
06:24

Linked List implementation of Queue
03:52

Queue through Circular Linked List
02:21

Circular Queue
07:55

Deque
08:01

Priority Queue
02:36

Checking validity of an expression containing nested parentheses
05:49

Function calls
02:16

Evaluating Arithmetc Expressions
03:22

Polish Notations
05:56

Converting infix expression to postfix expression
10:31

Evaluation of postfix expression
03:12

Stack and Queue Quiz
9 questions
+
Recursion
13 Lectures 37:43
Introduction
02:38

Flow of control in Recursive functions
02:09

Winding and unwinding phase
01:12

Factorial
03:33

Printing numbers from 1 to n
04:45

Sum of digits of an integer
03:34

Base conversion
02:05

Finding nth power of a number
01:38

Euclids Algorithm
02:48

Fibonacci Series
02:31

Tower of Hanoi
06:44

Tail recursion
02:40

Recursion vs. Iteration
01:26

Recursion Quiz
10 questions
+
Binary Tree
16 Lectures 01:03:41
Intoduction to Trees
06:01

Binary Tree
06:48

Strictly Binary Tree and Extended Binary Tree
05:15

Full binary tree and Complete Binary Tree
04:58

Array Representation of Binary trees
03:26

Linked Representation of Binary Trees
02:14

Binary Tree Quiz A
10 questions

Traversal in Binary Tree
02:06

Preorder Traversal
04:58

Inorder Traversal
04:43


Level order traversal
03:18

Finding height of a Binary tree
03:02

Binary Tree in C
02:35

Constructing Binary tree from Traversals
01:35

Cosntructing binary tree from inorder and preorder traversals
04:23

Constructing binary tree from postorder and inorder traversals
03:49

Binary Tree Quiz B
10 questions
+
Binary Search Tree
6 Lectures 33:57
Introduction
03:03

Traversal in Binary Search Tree
01:55

Searching in a Binary Search Tree
06:08

Nodes with Minimum and Maximum key
03:23

Insertion in a Binary Search Tree
07:40

Deletion in a Binary Search Tree
11:48

Binary Search Tree Quiz
9 questions
+
Heap
6 Lectures 25:14
Introduction
02:40

Heap Representation
02:12

Insertion in Heap
07:24

Deletion
07:37

Building a heap
04:15

Heap Applications
01:06

Heap Tree Quiz
7 questions
+
Sorting
39 Lectures 02:03:16
Introduction
05:02

Sort Stability
02:25

Selection Sort
01:49

Selection Sort Example
01:18

Selection Sort in C
02:55

Analysis of Selection Sort
02:20

Bubble Sort
02:24


Bubble Sort in C
04:15

Improvement in Bubble Sort
02:16

Analysis of Bubble Sort
02:04

Sorting Quiz A
10 questions

Insertion Sort
02:37

Insertion Sort Example
02:22

Insertion Sort in C
03:43

Analysis of Insertion sort
04:40

Shell Sort
02:24

Shell Sort Example
02:07

Shell Sort in C
03:24

Analysis of Shell Sort
03:29

Merging two Sorted Arrays
05:54

Recursive Merge Sort
02:29

Recursive Merge Sort in C
03:40

Analysis of Merge Sort
00:36

Iterative Merge Sort
01:31

Iterative Merge Sort in C
02:45

Quick Sort
06:56

Quick Sort in C
06:48

Analysis of Quick Sort
03:00

Binary tree sort
03:05

Binary Tree Sort in C
02:31

Analysis of Binary Tree Sort
01:14

Heap Sort
07:02

Heap Sort : C implementation and Analysis
01:46

Radix Sort
04:17

Radix Sort : C implementation and Analysis
05:28

Address Calculation Sort
04:50

Address Calculation Sort in C
02:44

Analysis of Address Calculation Sort
01:02

Sorting Records
01:53

Sorting Quiz B
10 questions
+
Searching
5 Lectures 34:30
Linear Search
04:58

Variations of Linear Search
06:42

Binary Search
06:04

Implementation of Binary Search
13:51

Analysis of Binary Search
02:55
2 More Sections
About the Instructor
Deepali Srivastava
3.9 Average rating
383 Reviews
2,329 Students
6 Courses

Deepali Srivastava has a Master's degree in Mathematics and is the author of books "C in Depth" and "Data Structures Through C in Depth". She loves programming and is passionate about teaching. Whether writing a book or making a course, she always tries to present the concepts in a simplified way which helps students develop interest in the topic being taught. Her books have been appreciated by students and she hopes that her online courses will also prove to be helpful.