Mshabab Alrizah

Algorithms and Data Structures 2

إنما التوفيق بيد الله سبحانه وتعالى. ولكن لا تسنى ان الله هو العدل, فكلما اجتهدت كلما حصلت, فلن يضيع الله علم عامل منكم

Announcements

All Announcements will be in the BlackBroard

 

About the course

This course advances the programming concepts and topics studied in 115CSM-Data Structures and Algorithms -I. The course develops the student’s understanding and abilities when using advanced programming concepts and techniques in a wide variety of computer science and real-world problems, intending to achieve an efficient implementation for solving a given problem. The main topics covered in the course include Algorithm analysis and implementation, recursion, trees & traversals, graphs, hashing.

Instructor

Dr. Mshabab Alrizah

Location: TBA

Office hourse: TBA

Lectures

Monday: 10 AM-11 AM

Tusday: 10 AM-11 AM

Thursday: 10 AM-11 AM

Teaching Assistants

No TA for this course

Office Location: nan

Office hours: nan

Email: nan

Prerequisites

115 CSM – 3

Programing Language: Java 

Textbook

  • Frist book: Data Structures and Algorithms in Java, 4th edition, BY Adam Drozdek, 
    Cengage Learning Asia, 2013
  • Secon Book: Data Structures and Problem Solving Using Java, 4th Edition by Mark Allen Weiss.
  • Thrid book: Data Structures and Algorithms in Java, 6th Edition by Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser. (new version) 
  •  
  •  

More refrences

  • Introduction to Algorithms, (3rd Edition). Thomas H. Cormen , MIT Press.
  • Algorithm Design, Jon Kleinberg and Eva Tardos, Addison-Wesley, 2005.
  • Algorithms (1st Edition), Sanjoy Dasgupta, Christos H. Papadimitriou, and Umesh V. Vazirani.

Homework and programming assignments

Assignments #1:

Assignment #2:

LAB #1: on the blackboard

LAB#2:

LAB#3:

LAB#4:

Evaluation and grade

Assignments: 5% ( Assignemtn 1, Assignment 2, …….) 

LAB Assignments: 5% (Lab1, Lab2, Lab,…..

Quizzes: 5%

Lab Quize: 5%

LAB final Exam: 10%

One Midterm exam: 20% 

Final exam: 50%

 

Schedule

This schedule is subject to change depending on how the course progresses.

DateWEEKTopicSlidesAssignment/ HW DueNote
12-Sep3Registration issue Lab
14-Sep3Registration issue
16-Sep3Overview of the course
19-Sep4Introduction to objects & class in JAVA + eclipse installation Lab
21-Sep4Recall: of Object Oriented Program with Java
23-Sep4Holiday
26-Sep5Recall: Impelementation of Object Oriented Program with Java Lab
28-Sep5Recursion: Recursive Definitions, Rules of writing recursive Programs
30-Sep5Recursion: Activation Record, methods calls and recursion implementation,
3-Oct6Recursion: Fibonacci series, Factorial Lab
5-Oct6Recursion: Tail Recursion, Non- Tail Recursion, Excessive Recursion, Backtracking, 4 & 8 Queen’s Problem
7-Oct6Binary Trees: Trees, Binary Trees
10-Oct7Recursion: Eight queens problem and case study Lab
12-Oct7Binary Trees: Binary Search Trees, Implementing binary trees
14-Oct7Binary Trees: Tree Traversal (Breadth-First Search Traversal)
17-Oct8Long weekend
19-Oct8Binary Trees: Tree Traversal ( Depth-First Search Traversal)
21-Oct8Midterm Midterm
24-Oct9Binary Trees : :Implementing binary tree, Searching a binary search tree. Lab
26-Oct9Binary Trees: Insertion, Deletion, Tree Rotation
28-Oct9Binary Trees: AVL tree Insertion and Deletion, Priority Queue
31-Oct10Binary Trees: Tree traversals. insertion, deletion and case study. AVL Trees Lab
2-Nov10Binary Trees: Min-Heaps and Max- Heap Insertion & Deletion.
4-Nov10Long weekend
7-Nov11Binary Trees: Heaps lab
9-Nov11Multi-way Trees The family of B-Trees
11-Nov11Multi-way Trees B-Tree Insertion and Deletion.
14-Nov12Multi way Trees: B-Trees. Lab
16-Nov12Graphs: Graph Terminology and Definitions
18-Nov12Graphs: Graph representation
21-Nov13Multi way Trees: Inserting a keying in a B-Tree, deleting a keying in a B-Tree Lab
23-Nov13Graphs: Traversals, Shortest path, Spanning trees
25-Nov13Graphs: Kruskal’s Algorithm, Connectivity
28-Nov14Holiday
30-Nov14Holiday
2-Dec14Holiday
5-Dec15Graphs :Graph traversals, Shortest paths. Lab
7-Dec15Hashing : Hashing Functions, Collision functions
9-Dec15Hashing : Open & Closed Hashing, Linear probing
12-Dec16Graphs (lab): Hashing Lab
14-Dec16Hashing :, Quadratic probing, Double Hashing, Chaining
16-Dec16Hashing : Double Hashing, Chaining
19-Dec17Long weekend
21-Dec17Review
23-Dec17Final Lab Assessment Final Lab Assessment
26-Dec18Final Exam Final Exam
28-Dec18Final Exam Final Exam
30-Dec18Final Exam Final Exam