 Instructor: Deniz Pehlivanoglu
 Lectures: 38
 Students: 3633
 Duration: 10 weeks
Data Structures are the programmatic way of storing data so that data can be used efficiently. Almost every enterprise application uses various types of data structures in one or the other way. This course by Academy Europe will give you a great understanding on Data Structures needed to understand the complexity of enterprise level applications and need of algorithms, and data structures.
Why to Learn Data Structure and Algorithms?
As applications are getting complex and data rich, there are three common problems that applications face nowadays.
 Data Search − Consider an inventory of 1 million(10^{6}) items of a store. If the application is to search an item, it has to search an item in 1 million(10^{6}) items every time slowing down the search. As data grows, search will become slower.
 Processor speed − Processor speed although being very high, falls limited if the data grows to billion records.
 Multiple requests − As thousands of users can search data simultaneously on a web server, even the fast server fails while searching the data.
To solve the abovementioned problems, data structures come to rescue. Data can be organized in a data structure in such a way that all items may not be required to be searched, and the required data can be searched almost instantly.
Applications of Data Structure and Algorithms
Algorithm is a stepbystep procedure, which defines a set of instructions to be executed in a certain order to get the desired output. Algorithms are generally created independent of underlying languages, i.e. an algorithm can be implemented in more than one programming language.
From the data structure point of view, following are some important categories of algorithms −
 Search − Algorithm to search an item in a data structure.
 Sort − Algorithm to sort items in a certain order.
 Insert − Algorithm to insert item in a data structure.
 Update − Algorithm to update an existing item in a data structure.
 Delete − Algorithm to delete an existing item from a data structure.
The following computer problems can be solved using Data Structures −
 Fibonacci number series
 Knapsack problem
 Tower of Hanoi
 All pair shortest path by FloydWarshall
 Shortest path by Dijkstra
 Project scheduling
Free Certification
Academy Europe presents highquality formal diplomas, certificates and ecertificates which are formal proof and recognition of accredited online courses. It shows all student’s abilities to learn and achieve high results and is very useful to promote personal career including with CVs, job applications and self improvements.
How can you get your certificate at Academy Europe?
 You must click “complete” link at the end of every lesson of your course after you finish them.
 When you finish all lessons of course, the “finish course” link is going to be active at the end of last lesson.
 When you click the “finish course” link, you will finish your course on Academy Europe officially. Then, “certificate” page of you completed course will be automatically active.
 You can see and download your certificate online after you click on your “certificate” link.
Audience
This course is designed for Computer Science graduates as well as Software Professionals who are willing to learn data structures and algorithm programming in simple and easy steps.
After completing this course you will be at intermediate level of expertise from where you can take yourself to higher level of expertise.
Prerequisites
Before proceeding with this tutorial, you should have a basic understanding of C programming language, text editor, and execution of programs, etc.

Data Structures & Algorithms

Lecture 1.1Data Structures & Algorithms – Overview

Lecture 1.2Data Structures – Environment Setup


Algorithm

Lecture 2.1Data Structures – Algorithms Basics

Lecture 2.2Data Structures – Asymptotic Analysis

Lecture 2.3Data Structures – Greedy Algorithms

Lecture 2.4Data Structures – Divide and Conquer

Lecture 2.5Data Structures – Dynamic Programming


Data Structures

Lecture 3.1Data Structures & Algorithm Basic Concepts

Lecture 3.2Data Structures and Algorithms – Arrays


Linked Lists

Lecture 4.1Data Structure and Algorithms – Linked List

Lecture 4.2Data Structure – Doubly Linked List

Lecture 4.3Data Structure – Circular Linked List


Stack & Queue

Lecture 5.1Data Structure and Algorithms – Stack

Lecture 5.2Data Structure – Expression Parsing

Lecture 5.3Data Structure and Algorithms – Queue


Searching Techniques

Lecture 6.1Data Structure and Algorithms Linear Search

Lecture 6.2Data Structure and Algorithms Binary Search

Lecture 6.3Data Structure – Interpolation Search

Lecture 6.4Data Structure and Algorithms – Hash Table


Sorting Techniques

Lecture 7.1Data Structure – Sorting Techniques

Lecture 7.2Data Structure – Bubble Sort Algorithm

Lecture 7.3Data Structure and Algorithms Insertion Sort

Lecture 7.4Data Structure and Algorithms Selection Sort

Lecture 7.5Data Structures – Merge Sort Algorithm

Lecture 7.6Data Structure and Algorithms – Shell Sort

Lecture 7.7Data Structure and Algorithms – Quick Sort


Graph Data Structure

Lecture 8.1Data Structure – Graph Data Structure

Lecture 8.2Data Structure – Depth First Traversal

Lecture 8.3Data Structure – Breadth First Traversal


Tree Data Structure

Lecture 9.1Data Structure and Algorithms – Tree

Lecture 9.2Data Structure & Algorithms – Tree Traversal

Lecture 9.3Data Structure – Binary Search Tree

Lecture 9.4Data Structure and Algorithms – AVL Trees

Lecture 9.5Data Structure & Algorithms – Spanning Tree

Lecture 9.6Heap Data Structures


Recursion

Lecture 10.1Data Structure – Recursion Basics

Lecture 10.2Data Structure & Algorithms – Tower of Hanoi

Lecture 10.3Data Structure & Algorithms Fibonacci Series
