Certified in data structure

Wishlist Share
Share Course
Page Link
Share On Social Media

About Course

Covers the design, analysis, and implementation of data structures and algorithms to solve engineering problems using an object‐oriented programming language.

Topics include elementary data structures,(including arrays, stacks, queues, and lists), advanced data structures (including trees and graphs), the algorithms used to manipulate these structures, and their application to solving practical engineering problems.

What Will You Learn?

  • Based on satisfactory completion of the course, a student should be able to: 
  • Formulate and apply object‐oriented programming, using C++, as a modern tool to solve engineering problems. 
  • Demonstrate an understanding of basic data structures (such as an array‐based list, linked list, stack, queue, binary search tree) and algorithms. 
  • ⦁ Demonstrate the ability to analyze, design, apply and use data structures and algorithms to solve engineering problems and evaluate their solutions. 
  •  
  • ⦁ Demonstrate an understanding of analysis of algorithms. Study an algorithm or program code segment that contains iterative constructs and analyze the asymptotic time complexity of the  algorithm or code segment. 

About the instructor

P

Course Curriculum

Module 1

  • Data Types. Abstraction. Data abstraction and Abstract Data Types (ADTs). Review C++ classes
  • Friend functions. Operator overloading. Exception handling. Memory allocation and deallocation. bad_alloc exception.
  • Encapsulation. Inheritance. Polymorphism. Virtual functions.
  • Templates. Function and class templates. Programming using class and function templates. Standard Template Library (STL). Components of STL
  • Basic data structures. Arrays. Static arrays and Dynamic arrays. Explore how a generic Vector container is used to manipulate data

Module 2

  • List ADT. Implementation using arrays (static and dynamic). Basic operations on a List
  • Linked-List. Singly linked-lists. Implementation using pointers. Basic Operations
  • Stacks and Queues. Behavior of a Stack. Basic operations on a Stack. Array-based stacks. Linked-list based implementation. Expression evaluation using a stack. Queues. Behavior of a queue. Basic queue operations Study implementations using an array and a linked-list.
  • Tree data structure. Binary and non- binary trees. Structure of a binary tree. Definitions and properties. Traversing a binary tree. Study binary tree implementation
  • Assignments

Module 3

  • Binary Search Tree (BST). Organizing data in a BST. Inserting and deleting items in a BST. Traversing a BST. Non- binary (General) tree. General tree traversal
  • Assignments
  • Algorithm analysis. What to analyze. Analysis techniques. Efficiency of algorithms. Comparing efficiency of various algorithms
  • Searching and Hashing algorithms. Search algorithms – Sequential Search, Ordered lists, binary search. Searching using Hashing. Hash tables. Hash functions. Some examples of hash functions. Collision resolution.
  • Sorting algorithms. Sorting an array of elements. Study various algorithms and their efficiency

Exam

Download eBooks

  • Download eBooks

Student Ratings & Reviews

No Review Yet
No Review Yet