 # UdemyFundamental Data Structures & Algorithms using C language. Learn Data Structures and algorithms for Stack, Queue, Linked List, Binary Search Tree and Heap ( using C Programming ).

What you'll learn
• Recursion, Stack, Polish Notations, infix to postfix, FIFO Queue, Circular Queue, Double Ended Queue, Linked List - Linear, double and Circular - all operations, Stack and Queue using Linked List
• What is stack, algorithms for Push and Pop operation. Implementation of Stack data structure using C.
• Using Stack - checking parenthesis in an expression
• Using Stack - Understanding Polish notations, algorithm and implementation of infix to postfix conversion and evaluation of postfix expression
• What is a FIFO Queue, understanding Queue operations - Insert and delete, implementing FIFO Queue
• Limitations of FIFO queue, concept of Circular Queue - Implementation of Circular queue.
• Concept of Double ended queue, logic development and implementation of double ended queue.
• Concept of Linked List - definition, why we need linked list.
• Singly Linked List - developing algorithms for various methods and then implementing them using C programming
• Doubly Linked List - developing algorithm of various methods and then implementing them using C programming
• Circular Linked List - developing algorithm of various methods and then implementing them using C programming
• How to estimate time complexity of any algorithm. Big Oh, Big Omega and Big Theta notations.
• Recursion, concept of Tail recursion, Recursion Vs Iteration.
• Binary Tree, definition, traversal (in-order, pre-order and post-order), binary search tree, implementation.
• Heap - concept, definition, almost complete binary tree, insertion into heap, heap adjust, deletion, heapify and heap sort.
Description
You will learn the following in this course: (All implemented using C programming)
1. Fundamental of Data Structure concept

2. Why we need Data Structures

3. Stack - Idea, definition, algorithm, implementations.

4. Using Stack - Parenthesis checking, Polish Notation, Infix to postfix conversion and evaluation.

5. FIFO Queue - Idea, definition, algorithm, implementation.

6. Circular Queue using array - Idea, definition, algorithm, implementation.

7. Double ended queue using array - Idea, definition, algorithm, implementation.

8. Linked List - Idea, definition, why we need linked list. Comparison with array.

9. Singly Linked List - Development of algorithm for various operations and then Implementation of each of them

10. Creating Stack and Queue using Singly Linked list - Implementation.

11. Doubly Linked List - Idea, definition, algorithm of various operations and implementations.

12. Circular Linked List - Idea, definition, algorithm and implementations.
14. Calculating efficiency of algorithms, Worst Case (Big Oh), Average Case (Big Theta) and Best case (Big omega) complexities. How to calculate them for different algorithms.
15. Binary Searching
16. Recursion in detail. Example program using recursion and the critical comparison between Recursive approach and Iterative approach of problem solving.
17. Binary Tree, definition, traversal (In, Pre and Post Order), Binary Search Tree implementation.
18. Heap data structure, definition, heap insertion, deletion, heap adjust, Heapify and heap sort.

Who this course is for:
• Students who want to prepare themselve for interview of top companies like Google, Amazon or Microsoft.
• Students who are looking forward to be an efficient programmer, who are having data structures in their syllabus.
• Students who wants to have in dept knowledge about the Stack, Queue and Linked List, Efficiency of Algorithm, Binary Tree, Heap
• • • ghanaxxx, crappy101, brute123 and 21 others
Author
TUTProfessor