Documente Academic
Documente Profesional
Documente Cultură
3
Regulations
Academic Dishonesty: Cheating and
Plagiarism will be very strictly
punished
At the end of each lecture students
are encouraged to give a wrap-up of
the lecture, earning thereby bonus
points.
Assessment
Semester:
90 Final Exam
20 Mid term
5 Assignment+ Quizes
35 Lab (20) + Project (15)
Assessment
Credit:
40 Final Exam
20 Mid term …
20 Lab
15 Project
5 Assignments + attendance + quizes
Activities:
- Vote for
- BEST STUDENT
- Who is the
- Best Team member
- Best Team Leader
7
References:
The e-learning site at:
http://elearning.eng.cu.edu.eg/
Data Abstraction & Problem Solving
with C++
Walls and Mirrors
By Frank M. Carrano
Pearson International Edition,
Addison Wesley
References:
Data Structures, A Pseudocode
Approach in C
By Richard F. Gilberg & Behrouz A.
Forouzan, second edition Thomson Course
Technology 2005
About the Reference Book
Data Abstraction
& Problem Solving
an ALGORITHM ( ?? )
An Algorithm has a complexity
10
Mirrors
11
About the Reference Book
Mirros represent one type of
algorithms in which the solution is
a repeated reflection decreasing
each time in size. It is called a
recursive algorithm.
A recursive function calls itself,
Factorial ……..
13
14
About the Reference Book
Now let us focus on
Walls:
Walls:
The operations specified by the
program (or user) determine the
suitable ADT but not the DATA
STRUCTURE by which the ADT is
represented.
This is what ADT is all about.
17
About the Reference Book
Walls:
If the main operations are about
displaying students one at a time,
adding, deleting or finding a certain
stud then the ADT used will be
probably a LIST ADT.
If in addition they need to be kept
Walls:
If the main operations are finding
the friendship or relation between
students then the ADT will be a
GRAPH
19
Walls
X
21
About the Reference Book
Walls:
…. HENCE
For an ADT we DONOT see
how data is structured.
The operations on the ADT (interface)
determine the data structure most suitable
for implementing the operations.
22
About the Reference Book
Our study will be concerned with:
Different ADTs + their representation
Implementation of different operations
23
About the Reference Book
To complete the image:
The elements of the data structures
previously named “students” may vary
They may be cities, tools , persons, …
24
About the Reference Book
We shall start with the simple LIST
ADT of very simple integer elements:
We start by specifying the interface
26
About the Reference Book
Then we shall consider how the template
definition can be used to generalize the LIST
ADT.
Finally we shall proceed with other ADTs ( e.g.
stacks, queues, trees, graphs) using templates.
Note that implementation details
will be YOUR responsibility
assisted by sections and LAb
27
Course Content
1. Preliminarie: Rules, Course
Overview, ILOs
2. List ADT
3. Templates
4. Recursion
5. Stack ADT and its applications
6. Queue ADT and its applications
7. Trees ADT and applications
28
Course Content
8. Algorithm Efficiency
9. Sorting: Simple Algorithms
10. Sorting: Advanced Algorithms
11. Graphs
12. Hashing
29
ILOs (Intended Learning
Outcomes)
1. Knowledge and Understanding
2. Intellectual Skills
3. Professional and Practical Skills
4. General and Transferable Skills
30
ILOs
31
ILOs
2. Intellectual Skills
1. Analyze, select and synthesize
2. Think in a creative and innovative way
for solving problems
3. Investigate failures and find solutions
32
ILOs
33
ILOs
34
End of Slides