Nothing Special   »   [go: up one dir, main page]

Data Structures and Algorithms

Download as pdf or txt
Download as pdf or txt
You are on page 1of 33
At a glance
Powered by AI
The document outlines a course on data structures and algorithms covering topics such as lists, stacks, queues, trees, hashing and sorting algorithms.

The lectures cover topics such as linked lists, stacks, queues, trees, hashing, sorting algorithms, algorithm analysis and more as outlined in the lecture outlines provided.

Linear data structures like linked lists, stacks and queues as well as non-linear data structures like trees and hash tables are discussed.

Data Structure and algorithms

Asst. Lect. Zainab Mahmood Fadil


Computer Engineering Department
Second Class
University of Technology
Contents of Syllabus
➢ Math review, logs, series, recurrence relations, proof by
induction.
➢ Algorithm Analysis, max subsequence sum, longest
increasing subsequence,
➢ Euclid’s algorithm.

➢ Lists and garbage collection Multilinked structures and


dynamic storage allocation

➢ Linked lists
➢ Stacks,
➢ Queue
➢ priority queues
➢ Trees, balanced trees, AVL Trees, B-Trees, Red-Black
References

1. C++ Programming : Program Design Including Data Structures by D.S.


MALIK ,fourth Edition ,2009 .
2. C++ Plus Data Structures by N. Dale ,fourth Edition,2010,Jones and Bartlett
Publishers
3. Data Structures and Algorithms in C++ by Adam Drozdek , Second
Edition, 2001.
Data Structure and algorithms

Lecture 1
Mathematical Review
Lecture outline

• Logarithms
• Arithmetic Series
• Proof by induction
End of Lecture 1
Data Structure and algorithms

Lecture 2
INTRODUCTION TO DATA STRUCTURE
Lecture outline

• Introduction
• Abstract Data Type (ADT)
• Containers
• Introduction to Data Structure
• Linear List
End of Lecture 2
Data Structure and algorithms

Lecture 3
Link List
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture outline
• Linked Lists Definition
• ADVANTAGES AND DISADVANTAGES
• TRAVERSING A LINKED LIST
• Item insertion
• Item deletion
• Linked List as an ADT
• Ordered Linked Lists
• Print Link List in reverse order
• Doubly Link list
• Circular Link List
End of Lecture 3
Data Structure and algorithms

Lecture 4
Stack
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline

• Stack definition
• Stack operations
• Stack main functions
• Stack ADT
• Postfix calculator
End of Lecture 4
Data Structure and algorithms

Lecture 5
Queue
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline
• Queue definition
• Queue operations
• Linked Queue
• Linear Queue
• Circular Queue
• Double-Ended Queue
• Priority Queue
End of Lecture 5
Data Structure and algorithms

Lecture 6
Search
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline

• Sequential search
• Binary search.
End of Lecture 6
Data Structure and algorithms

Lecture 7
Sorting Algorithms
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline
• Selection Sort
• Bubble Sort
• Insertion Sort
• Quick Sort
• Merge Sort
End of Lecture 7
Data Structure and algorithms

Lecture 8
Tree Data Structure
REF: C++ PROGRAMMING: PROGRAM DESIGN
INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline

• Tree data structure


• Binary tree
• Binary Search Tree
End of Lecture 8
Data Structure and algorithms

Lecture 9
Hash Table

REF: C++ PROGRAMMING: PROGRAM DESIGN


INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline

• Hash Table data structure.


• Hash Function.
• Collision Resolution.
End of Lecture 9
Data Structure and algorithms

Lecture 10
Algorithm Analysis

REF: C++ PROGRAMMING: PROGRAM DESIGN


INCLUDINGDATASTRUCTURES ,FIFTH EDITION, D.S. MALIK
Lecture Outline
• Algorithms
• Algorithm Complexity
• Big Oh Notation, Ο
• Growth Rate of Various Functions
• Worst Case, Average Case
End of Lecture 10
End of Course

You might also like