Teaching Asst: Benjamin Horne
Office Hours: Wednesday 10:50-11:50 am
Location: AE 119
Labs: Section 3 (odd lab) Section 6 (every week)
Teaching Asst: Shuran Li
Office Hours: M 11:00 am -12:00
Location: AE 217
Labs: Section 1 (every week) Section 3 (even lab)
Graduate and Undergraduate Lab TAs:
Section 1 W 10-11:50 am Sage 4101 GTA Shuran Li UTA Andrew Tupper, Anthony Handwerker
Section 2 W 2-3:50 pm Sage 2715 GTA Hongzhao Huang UTA Brandon Drumheller, Michael Han
Section 3 W 12-1:50 pm Troy 2012 GTA Benjamin Horne(odd lab) Shuran Li (even lab) UTA Andrew Tupper, Anthony Handwerker
Section 4 W 4-5:50 am Sage 2715 GTA Honzhao Huang UTA Mark Radocy, Xi Xi
Section 5 W 12-1:50 pm Sage 3101 GTA Pranay Anchuri, UTA Brandon Drumheller, Michael Han
Section 6 2-3:50 pm Sage 5101 GTA Benjamin Horne (every week) UTA Mark Radocy, Xi Xi
Students at the end of the course will be able to design, implement and analyze algorithms
for problems in Science and Engineering. Students will learn different Algorithmic Paradigms
and learn techniques for analyzing the algorithms. Students will also learn efficiency both in
design and implementation. Students will learn to compare different algorithms for solving
the same problem. Students will be exposed to an elementary treatment of NP-complete problems.
The goal of this course is to provide a strong foundation in algorithms and
data structures in
preparation for jobs in industry or for more advanced courses. Algorithms are the basic language of computer science. After taking this course, you, the student, should be able to:
Understand the correctness of, and analyze the running times of, different algorithms.
Use different algorithm-design techniques, including, but not limited to, greedy, divide-and-conquer, and dynamic programming techniques, to solve particular problems.
Model real problems abstractly using the language of graphs and flows.
Solve problems by reducing to other problems whose solution is known, and show that
problems are hard by reducing from other problems.
Make intelligent decisions about alternative data structures and algorithmic techniques in
the context of practical software problems, choosing from existing data structures and algorithms or designing your own when necessary
Class Time: Monday and Thursday,
Classroom: DCC 308
Prerequisites: CS2 (CSCI-1200) and
Foundations of Mathematics (CSCI-2200).
This course discusses
algorithms, and the mathematical techniques necessary to design
and analyze them.
Collaboration is not allowed. Homeworks and exams should be
solved and written by individuals alone. If anyone is caught cheating then
severe measures will be taken such as lowering the final grade, and the event will
be reported to the appropriate authorities in the campus.
Homework No Late Submissions (unless there is a medical Excuse)