CS 2420 Data Structures and Algorithms
Section 002
Time and Place: 12:30 pm -1:20 pm MWF, Old Main 301
Professor: Changhui (Charles) Yan
Contact: Old Main 401F,
435-797-2570
Charles.yan@usu.edu
Office Hours: 2:30pm-3:30pm MWF
Textbook:
Mark Allen Weiss. Data Structures and Algorithm Analysis in C++, Third Edition. ISBN: 0-321-44146-X.
Course goals:
¡¤ Be able to perform asymptotic analysis for algorithms.
¡¤ Master basic data structures including trees, hash table, disjoint sets, heaps.
¡¤ Master sorting algorithms including InsertionSort, MergeSort, and BucketSor.
¡¤ Master fundamental graph algorithms including topological sort, shortest paths, and minimum spanning tree.
Prerequisites:
2.0 GPA; grade of C- or better in
CS 1410
Late Work:
Assignments
are due at midnight on the due date. Assignments handed within three days after
the due time will be subjected to a 25% penalty in score. For example, if the
total score of the assignment is 100 points, then 25 points will be reduced
from whatever the student has. Assignments overdue by more than three days will
get 0 point, except for a legitimate reason, e.g. illness, which must be
documented.
Code of Conduct for
Computer Science Classes:
As a computer scientist, or someone taking a computer
science class, you are expected to perform your work at all times in an ethical
manner. This means that in addition to doing your own work and giving
appropriate credit when the work of others is used, you are required to protect
your work.
A student that protects their work will not allow another
student access to that work whether it be allowing it to be copied, or treating
its security in such a way as to give unintentional access, such as
"accidental" loss. It is the policy of the department that when
duplicate (essentially the same) work is turned in by two or more students, without
acknowledgement of allowed cooperation, all involved students will be
considered in violation of this department policy. Under such circumstances,
each student will receive minus the points possible for the work.
Thus, for a 15-point assignment, all would receive -15 points. If the
infraction is deemed more egregious, then further action may be taken.
Students with ADA-documented physical, sensory,
emotional, or medical impairments may be eligible for reasonable
accommodations. Veterans may also be eligible for services. All accommodations
are coordinated through the Disability Resource Center (DRC) in Room 101 of the
University Inn, (435)797-2444 voice, (435)797-0740 TTY, or toll free at
1-800-259-2966. Please contact the DRC as early in the semester as possible.
Alternate format materials (Braille, large print or digital) are available with
advance notice.
MSDNAA note:
The
Computer Science Department is a member of the Microsoft Academic Alliance (MSDNAA), and specifically what is now called the Developer
Academic Alliance. Through this program, students in CS courses can obtain and
use a large number of Microsoft's operating systems and software
packages. If you are interesting in downloading any of this software for
your use, please follow the directions found at http://cs.usu.edu/htm/elms
Important
Dates:
¡¤
September 14 Last Day to Add Classes (Including
Audits) Adding a class beyond this date requires a petition
and $100 late-add fee
¡¤
September 14 Last Day to Drop Without Notation on
Transcript
¡¤
Grader
Yuxuan Wang yuxuan.wang@aggiemail.usu.edu
Juan Shan juan.shan@aggiemail.usu.edu
Class Schedule
Aug 24 Syllabus
Aug 26-Sep 4 Algorithm analysis (Chapter 2)
Sep 9-21 Balanced Trees (Chapter 4)
Sep 23-28 Hashing (Chapter 5)
Sep 30 Reviews
Oct 2 Midterm
Exam I
Oct 5-14 Priority Queues (Chapter 6)
Oct 15-30 Sorting (Chapter 7) (Oct 15, Thursday, follows Friday schedule)
Nov 2-4 Disjoint sets (Chapter 8)
Nov 6 Reviews
Nov 9 Midterm
Exam II
Nov 11-Dec 2 Graphs (Chapter 9)
Dec 4 Reviews
Dec 7
(11:30 am-1:20 pm) Final Exam
Written Assignments
Written 1 (Assigned Aug 28, Due Sep 4)
Written 2 (Assigned Sep 14, Due Sep 18)
Written 3 (Assigned Sep 25, Sep 30)
Written 4 (Assigned Oct 9, Due Oct 14)
Written 5 (Assigned Oct 26, Due Nov 2)
Written 6 (Assigned Nov 4, Due Nov 8, noon)
Written 7 (Assigned Nov 24, Due Dec 5)
Programming
Assignments
Program 1 (Assigned Sep 9, Due Sep 14)
Program 2 (Assigned Sep 18, Due Sep 25)
Program 3 (Assigned Oct 2, Due Oct 9)
Program 4 (Assigned Oct 14, Due Oct 26)
Program 5 (Assigned Nov 11, Due Nov 18)
Program 6 (Assigned Nov 24, Due Dec 5)