1. Course Details

  • Level: Juniors
  • Prerequisite: EECE 230 Computers and Programming II
  • Lecture Times:  SMW 11:00 - 11:50 a.m
  • Room:  A 202
  • Office Hours: TBA
  • Student Study Hours Per Week: 9
  • Contact Hours Per Week: 3
  • Private Study Hours Per Week: 6
  • AY / Semester:  2006 – 2007/ Spring
  • Professor:  Dr. I. Damaj
  • Contact Details: i_damaj@du.edu.om
  • Professor's Website: http://www.idamaj.net
  • Summary of Assessment Method:  Quizzes, pop quizzes, assignments, project and presentation, and a final exam
  • Software Packages: Visual C++ IDE
  • Textbook: Data Abstraction and Problem Solving with C++: Walls and Mirrors Frank M. Carrano and Janet J. Prichard (International Edition) 4th Edition ISBN - 0-321-26980-2
  • Manual: Lab Manual to Accompany C++ How to Program, 4/e ISBN: 013038478X©2004
  • Reference: C++ How to Program, 5th edition, Deitel & Deitel, Prentice Hall, 2005

2. Aims of the Course:

This course introduces the student to advanced topics in programming. C++ is the adopted programming language for this course, although some assignments might include other languages.

3. Short Description:

Analysis of algorithms; internal and external sorting, hashing tables, and tree indexing. The course relies on advanced C++ concepts in the implementations of data structures and algorithms. Prerequisite: EECE 230. Every semester.

Details Topic Chapter No. Book Chapter Assessment
Weeks 1 - 3 Introduction to Classes and Objects 1 Deitel:
Ch3: Till section 3.9
Pop Quiz
Weeks 4 - 12 Object Oriented Programming(Revision EECE 230)
Part I: Classes I
Part II: Classes II
Part III: Operator Overloading
Part IV: Inheritance
Part V: Polymorphism
2 Carrano: Ch8
Deitel:
Ch9: Till section 9.10
Ch10: Till 10.4
Ch11, Ch12, and Ch13
Quiz I (W8)
Project Proposals
Weeks 7 - 9 Data Structures(Revision (Revision EECE 230))
Advanced Trees, Graphs and hashing Algorithms
Sorting and Searching Algorithms
Analysis of Algorithms
Design of Algorithms:
  • Part I: Greedy Algorithms
  • Part II: Divide and Conquer Algorithms
  • Part III: Dynamic Programming
  • Part IV: Backtracking Algorithms
  • Part V: Branch and Bound Algorithms
4
5
6
7
8
Carrano: Ch6, Ch7, Ch4, Ch10, and Ch 13;
Deitel: Ch21
Deitel: Ch2
Carrano: Ch10, Ch12, Ch13;
Deitel: Ch20
Carrano: Ch9, Ch14
Carrano: Ch9
Carrano: Ch1, Ch5
Quiz II (W12)
Projects Due (W16)

5. Assessment of the Course

Attendance 5%
Pop quiz and Assignment 5%
Quiz I 20%
Quiz II 20%
Project 20%
Final 30%
  • Homework and assignments should be submitted on time; no late submissions will be accepted.
  • No make up exams will be given, make sure not to miss any exam.

[May 24, 2007] Chapter 5 is posted.

[May 1, 2007] Chapter 4 Part 3 are posted.

[April 30, 2007] Chapter 4 Part 2 are posted.

[April 8, 2007] Chapters 4 Part 1 is posted.

[March 22, 2007] Chapters 3 is posted.

[Mar 4, 2007] Required reading from the book: " Data Abstraction and Problem Solving with C++: Walls and Mirrors Frank M. Carrano and Janet J. Prichard". Chapter 1: 1.1 and 1.2 only.

[Feb 28, 2007] Chapter 2 is posted.

[Feb 17, 2007]] Welcome to course website.


© 2015 - Dr. Issam W. Damaj