Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: UNYT Logo

University of New York Tirana

Komuna e Parisit,Tirana, Albania

Tel.: 00355-(0)4-273056-8 – Fax: 00355-(0)4-273059

Web Site Address: http://www.unyt.edu.al

Data Structures

Spring 2012

 

Course            : Data Structures (3 credit hours)

Instructor       : Dr. Marenglen Biba

Office              : Faculty building 2nd floor

Office Hours  : Monday 16-18 or by appointment

Phone             : 42273056 / ext. 112

E-mail             : marenglenbiba@unyt.edu.al

Course page    : http://www.marenglenbiba.net/ds/

 

Course Location and Time

 

Laboratory Room 4B, Monday 13-16.

 

Catalog Description

 

This course couples work on program design, analysis, and verification with an introduction to the study of data structures. Data structures capture common ways to store and manipulate data, and they are important in the construction of sophisticated computer programs. Students write JAVA programs, ranging from very short programs to more elaborate systems. Upon completion of this course, students should be able to: work on almost all widely used data structures.

 

Course Outcomes

 

Upon course completion, students will have demonstrated the ability to do the following:

  • understand the advantages of data structures as useful abstractions in programming
  • understand the concept of a linked list structure, recite different implementations of linked lists.
  • understand the concept of a LIFO structure; implement and use stacks
  • understand the concept of a FIFO structure; implement and use queues
  • understand the concept of the tree data structure; implement and use trees in applications
  • understand the concept of hash tables; implement and use them effectively
  • understand the concept of graphs; implement and use effectively
  • understand algorithm analysis and evaluate performance

 

Required Readings

 

Data Structures and Problem Solving Using Java, 4/E. Mark A. Weiss. Addison-Wesley, 2010. ISBN-10: 0321541405.

 

 

Content of the Course

 

  • Introduction to Data Structures
  • Algorithm analysis
  • Linked Lists
  • Stacks
  • Queues
  • Trees
  • Hash tables
  • Graphs
  • Priority Queues

 

 

Prerequisite courses

 

Object-Oriented Programming in Java

 

Course Requirements

 

Students are required to attend lectures and labs. Lecture handouts and lab notes will be available before commencement of the class. Students are expected to participate in class discussions. In the event of illness or emergency, contact your instructor IN ADVANCE to determine whether special arrangements are possible.

 

Participation: Participation extends beyond mere attendance. You may miss up to two classes without penalty. Each absence beyond the first two will cost you points off of your participation grade. The only exceptions to this rule are severe illness (doctor’s note required) and UNYT approved trips/activities. Appropriate documentation for absences beyond the first two is necessary and is to be provided on the class day directly before or after the one you miss. Students are expected to collect materials from the online course page, their classmates or see the instructor during consultation hours.

 

Exams: Two examinations will be taken one midterm and one final. Test format may combine a mixture of Definitions, Blanks, and short answers, two or three Essay questions covering all readings, lecture, and hand-out and class discussion content. No Student may miss a scheduled exam without receiving permission before the administration of the exam. Make-up exams might be significantly different from the regular tests, and will be administered at a time of instructor own convenience.

 

Reading assignments: You will be required to read all the handouts, slides, and other relevant materials. Each week, I will notify you in class what specific materials to read and/or assignments to prepare for the week. The reading assignments are selected to give you adequate understanding of the course material.

 

Project: I will announce projects usually based on the chapters/materials covered in class. Due dates will be specified accordingly. Projects must be submitted as specified to be considered on-time. Late assignments are accepted with the following penalties: -2 if submitted the next day it is due, and -1 for each day late after that. I will accept e-mail submissions.

 

Make-up policy Midterm/Final exam: Only students who miss an exam for university-approved and verifiable reasons will be allowed to take a make-up exam. Even then, except in the most extreme circumstances, no student may miss a scheduled exam without receiving permission before the administration of the exam. Make-up exams might be significantly different in format from the regular tests, and will be administered at a time of my own convenience.

 

Cheating policy: Cheating policy: Exams, assignments, projects and quizzes are subject to the STUDENT HONOUR CODE. The University’s rules on academic dishonesty (e.g. cheating, plagiarism, submitting false information) will be strictly enforced. Please familiarize yourself with the STUDENT HONOUR CODE, or ask me for clarification.

 

Grading Policy

 

Project

30%

Assignments

10%

Midterm

30%

Final

30%

 

Grading Scale (Standard UNYT grading scale)

 

Letter Grade

Percent (%)

Generally Accepted Meaning

      A

96-100

Outstanding work

      A-

90-95

      B+

87-89

Good work, distinctly above average

      B

83-86

      B-

80-82

      C+

77-79

Acceptable work

      C

73-76

      C-

70-72

      D+

67-69

Work that is significantly below average

      D

63-66

      D-

60-62

      F

0-59

Work that does not meet minimum standards for passing the course

 

 

Technology Expectations

 

1.      Internet use is necessary since students should regularly check the course home page.

2.      Continued and regular use of e-mail is expected

3.      Students must keep copies of all assignments and projects sent by e-mail.

 

Course Material

 

1.      27/02/2012            Intro to ADTs, Stack

2.      05/03/2012            Queues

3.      12/03/2012            Algorithms Analysis and Singly Linked Lists

4.      19/03/2012            Doubly Linked Lists

5.      26/03/2012            Exercises

6.      02/04/2012            Recursion and Trees, Binary Trees

7.      23/04/2012            MIDTERM

8.      30/04/2012            Binary Search Tree, Balanced Trees and AVL trees

9.      07/05/2012            Hash Tables

10.  14/05/2012            Priority Queues

11.  15/05/2012            Graphs

 

Sample Midterm

Questions Lesson 6

 

Midterm Results

Assignments Results

 

 

Last modified on Thursday, 17 May 2012, 9:45 AM, by Dr. Marenglen Biba