Data Structures
Lecture 1 :
Model Course Syllabi and
Introduction
0
Dr. Essam Halim Houssein Lecturer, Faculty of Computers and Informatics, Benha University
2
Overall Aims of Course:
By the end of the course the students will be able to:
1. Understand the concepts of the Data Structures.
2. Define and use standard data structures classes.
3. Design program with different data structures: array, linked list, stacks,
queues, trees , Graphs and Hash tables.
4. Describe common applications for each data structure in the topic list.
5. Compare alternative implementations of data structures with respect to the
performance.
6. Choose the appropriate data structures for modeling a given problem.
3
Contents:
Lecture Topic No. of
hours Lecture
Tutorial/
Practical
Lec.1 General introduction and overview of C++
Language (specially Arrays, Classes and Pointers) 5 3 2
Lec.2 Stacks and its application 5 3 2
Lec.3 Queues 5 3 2
Lec. 4&5 Linked lists 10 6 4
Lec. 6 Recursion 5 3 2
Lec. 7 Mid term Exam
Lec. 8 Sorting Techniques 5 3 2
Lec. 9&10 Searching and Hashing 10 6 4
Lec. 11&12 Trees 10 6 4
Lec. 13&14 Graphs 10 6 4
14 Lectures 65 39 26
4
Evaluation:
Course degree 100 Degree
Final-term Examination 65 %
Oral Examination 10 %
Practical Examination 15 %
Semester Work 10 %
Other Types of Assessment ---
Total 100%
5
List of References:
Essential books
1. Principles of Data Structures Using C and C++, Vinu V. Das, New Age
International (P) Ltd., Publishers, 2006.
Recommended books
1. C++ How to program, 8th Edition, Paul Deitel and Harvey Deitel, Pearson
Education, Inc., 2012
2. Data Structure And Algorithms, 2nd Edition, Michael T. Goodrich, Roberto
Tamassia and David M. Mount, John Wiley & Sons, Inc., 2011.
3. Data Structures Using C++, 2nd Edition, D.S. Malik, Course Technology,
Cengage Learning, 2010 .
4. Data Structure And Algorithms In C++, 3rd Edition, Adam Drozdek, Thomson
Course Technology, 2005.
6
Arrays
Arrays are data structures consisting of related data items of the same
type. Structures and classes can each hold related data items of
possibly different types. Arrays, structures and classes are “static” entities
in that they remain the same size throughout program execution. An
array is a consecutive group of memory locations that all have the same
type. To refer to a particular location or element in the array, we specify
the name of the array and the position number of the particular element in
the array.
12
Pointer
The most powerful features of the C++ programming language, is the
pointer. Previously, we saw that references can be used to perform
pass-by reference. Pointers also enable pass-by-reference and can be
used to create and manipulate dynamic data structures that can grow
and shrink, such as linked lists, queues, stacks and trees.
15
How to get the course contents and assignments
1. Go to: http://bu.edu.eg/staff/esamhalim14
2. Select Courses (from the left menu)
3. Select Data Structures Course
4. Download the Slides and assignments
5. Register You data and sign in using the course password
(DS2013)
6. Upload the solutions (take care the dead time)