Sie sind auf Seite 1von 33

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

Das könnte Ihnen auch gefallen