(this syllabus is subject to change)
(3 cr.) P: CSCI 265 and CSCI 340 strictly enforced.
A study of the design and analysis of data structures and algorithms. Abstract data types: arrays, stacks, queues, lists, trees, graphs. Algorithms: sorting, searching, hashing. File structures: organization and access methods.
This is a fundamental subject for computer science and engineering. It will tell you how to store data in your computer (data structure) and how to efficiently manipulate these data (algorithm analysis). Students will learn basic concepts and principles of various abstract data types, file structures, and algorithm analysis techniques, and will gain practical experience and programming skills through the course projects.
|
Date |
Class Schedule |
Assignment Due |
ACADEMIC CALENDAR |
|
|
week 1: |
Introduction, recursion (ch.1). C++
review (ch.1), |
|
January 9, CLASSES BEGIN |
|
|
week 2: |
Running time calculations (ch.2). Lists (ch3), |
|
|
|
|
week 3: |
Stacks and queues (ch.3), Trees and binary trees (Ch.4) |
|
|
|
|
week 4 : |
Binary search trees (ch.4), AVL trees (ch.4), Hashing (Ch.5) |
|
|
|
|
week 5 : |
Hashing (ch.5). |
|
|
|
|
week 6 : |
Priority queues, binary heap (ch.6), D-heaps |
|
|
|
|
week 7 : |
Leftist heaps (ch.6), Sorting, insertion sort (Ch. 7) |
Homework-2 |
|
|
|
week 8 : |
Review. Midterm exam |
Midterm Exam, |
|
|
|
week 9 : |
Heap sort (ch.7), Merge sort, |
|
|
|
|
week 10: |
No Classes |
|
|
|
|
week 11 : |
Quick sort (ch.7), External sort. |
|
|
|
|
week 12 : |
Graph, topological sort (ch.9), Shortest path |
|
|
|
|
week 13 : |
Network flow, Minimum spanning tree (TA) |
|
|
|
|
week 14 : |
Depth-first search (ch.9). FILE STRUCTURES preliminaries. (TA) |
|
|
|
|
week 15 : |
FILE RECORDS (TA), Multilevel Indexing, B-Tree |
Homework-4 |
|
|
|
week 16 : |
Review. |
|
|
|
|
week 16 : |
|
|
FINAL EXAM. |
Grading scale:
|
<50 |
>=50 |
>=55 |
>=60 |
>=65 |
>=70 |
>=73 |
>=77 |
>=80 |
>=83 |
>=87 |
>=90 |
>=95 |
|
F |
D- |
D |
D+ |
C- |
C |
C+ |
B- |
B |
B+ |
A- |
A |
A+ |
Midterm Exam: 30%; Final Exam: 30%; Assignments and projects: 30%; Attendance 10%
Notice: No late exam will be given under any condition. Early exam is acceptable during the week before the scheduled exam if you provide a sound reason.
This class will use Oncourse. You can login Oncourse using your IUPUI account.
TA Responsibilities
a. Work 10 hours per week, on average, assisting one professor in the conduct
of one course.
b. Offer office hours twice per week to assist students with the course and
homework material.
c. Assist in creating instructional material such as, slides, lecture
assignments, tests and solutions as requested by the instructor.
d. Grade all lecture and homework assignments in a timely manner.
e. Cover lectures, if needed, in the instructor's absence.
f. Maintain the course website in a timely manner.
g. Maintain the Oncourse site with up-to-date student
grades in a timely manner.
h. Monitor the class mailing list for any questions/ discussions and provide
answers when appropriate.