Data Structures and Algorithms in C

Learn Data Structures and Algorithms in C to provide efficient solutions to complex problems
3.3 (43 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.
332 students enrolled
$19
$75
75% off
Take This Course
  • Lectures 148
  • Length 10 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 6/2015 English

Course 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.

What are the requirements?

  • Basic knowledge of programming in any language

What am I going to get from this course?

  • 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

What 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

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Introduction
Preview
01:36
Section 1: Introduction to Data structures and Algorithms
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
Section 2: Linked List
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
Preview
05:14
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
Section 3: Stack and Queue
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
Section 4: Recursion
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
Section 5: Binary Tree
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
Postorder Traversal
Preview
04:30
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
Section 6: Binary Search Tree
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

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

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.

Ready to start learning?
Take This Course