University of Illinois at Chicago
EECS 360 -- Data Structures and Algorithms
Room: 130 SES
Time: MTWF 3:00 - 3:50
You should already have Aho & Ullman from 260.
Grade of C or better in EECS 260. You also need to be a competent C
|1/10||Introduction and Overview||Ch. 1 Weiss|
|1/11-14||Algorithm Analysis||Ch. 2 Weiss|
|(1/17)||No Class, Martin Luther King day|
|1/18-26||Lists, Stacks, Queues||Ch. 3 Weiss|
|1/28-2/16||Trees||Ch. 4 Weiss|
|2/18||Review||Ch. 1-4 Weiss|
|2/21-28||Hashing||Ch. 5 Weiss|
|2/29-3/10||Heaps||Ch. 6 Weiss|
|(3/13-17)||No Class, Spring Break|
|3/20-29||Sorting||Ch. 7 Weiss|
|3/31||Review||Ch. 5-7 Weiss|
|4/3-7||Sets||Ch. 8 Weiss|
|4/10-26||Graphs||Ch. 9 Weiss|
|4/28||Review||Ch. 1-9 Weiss|
|1/21||Homework 1 due|
|2/7||Homework 2 due|
|2/21, 6-8pm||Exam 1|
|2/25||Homework 3 due|
|3/6||Homework 4 due|
|3/24||Homework 5 due|
|4/3, 6-8pm||Exam 2|
|4/6||Homework 6 due|
|4/14||Homework 7 due|
|4/28||Homework 8 due|
Class participation, hard work, etc will decide borderline cases.
Letter grades will be decided only at the end. However, the following guidelines will be adhered to:
|Overall Score of at least||Letter grade|
Note that although there are 8 homeworks, the first two concern material you should be familiar with from 260. Programming assignments will constitute the vast majority of homeworks, however paper and pencil problems will be assigned from time to time.
Homeworks will have to be handed in either via the facility available under the web page, or by means of the turnin command under UNIX. More details will be available later.
All programming assignments will be written in ANSI C, must compile correctly by using gcc (path: /usr/local/gnu/bin/gcc on the EECS servers), and must run under the EECS department UNIX environment. To do your homeworks, you can use the SUN workstations in the EECS labs (see here for locations), or connect to the department servers --bert, ernie, oscar, grover-- from home or from other computers on campus.
Important Notice. If you do your homeworks in another environment, you have to make sure they run on the EECS machines. No credit will be given if the program does not compile! The TA cannot go and check whether your program compiles within another system.
Advice: When you do your programming assignments, always keep an old copy of your homework that you know compiles properly as a backup. Better to hand in an incomplete solution that compiles than a complete one that doesn't.
Academic dishonesty will not be tolerated. Please see the EECS department policy below on the topic; this policy specifies penalties for violations.
What is academic dishonesty? To hand in any work which is not 100% the student's creation. Thus:
Advice. Unfortunately, it is not sufficient that an individual student is honest, because there are others who may not be that honest. Thus:
The EECS Dept. will not tolerate cheating by its students. The MINIMUM penalty for any student found cheating will be to receive an E for the course and to have the event recorded in a department and/or College record. The maximum penalty will be expulsion from the University.
We intend to devote more effort than in the past to detecting and punishing cheating. Cheating includes all the following, though this is not a complete list:
For computer programs, if for some reason we cannot determine who copied from whom, we may, at our discretion, give failing grades to both students.
It is the responsibility of all engineering and computer science professionals to safeguard their company's "trade secrets." An employee who allows trade secrets to be obtained by competitors will almost certainly be fired. So, YOU are responsible for making sure that your Unix directories have permissions set so that only you can read your files, for being sure to log out at the end of working in the computer lab, etc.