Welcome to the CS 303 (lab) home page. On this page you can find plenty of information about this lab. Please pay special attention to the calendar and the submission policy (I will put them on this website later). The content of this home page is ever-changing, with new things added in frequently.
| Lab Instructor | Office Hours and Location | |
|---|---|---|
| Wei-Bang Chen | wbc0522@uab.edu | Thu 2:00pm ~ 3:00pm, CH128 or by appointment |
The lab concentrates on practical applications of algorithm design and analysis. The programming language for this lab is JAVA, and the major platform is Eclipse. For each programming assignment, a skeleton code is provided so that you don't have to worry about the trivial issues like data I/O. All you have to concentrate on is the core algorithm.
A graphical illustration is provided on how to create and run a java program using Eclipse -- important to starters!
Important: DON'T just save your files on the computer.
They might be removed after you log off!
Instructions on how to save your data
| Assignment | Date Assigned | Date Due | References / Source Code | Solution |
|---|---|---|---|---|
| Written Assignment 1 | Jan 10 | Jan 17 | N/A | N/A |
| Programming Assignment 1 | Jan 10 | Jan 24 | Download | N/A |
| Written Assignment 2 | Jan 24 | Jan 31 | What is sequence alignment? | Solution for Q1 & Q2 |
| Programming Assignment 2 | Jan 24 | Feb 7 | Download (LinkedList solution) | N/A |
| Written Assignment 3 | Feb 7 | Feb 14 | N/A | Solution |
| Programming Assignment 3 | Feb 7 | Feb 28 | Download | Solution |
| Written Assignment 4 | Mar 7 | Mar 20 | N/A | Solution |
| Programming Assignment 4 | Mar 7 | Mar 20 (Extend to Mar 27) | The Java Tutorials: Creating a GUI with JFC/Swing | N/A |
| Written Assignment 5 | Mar 20 | Mar 27 | N/A | N/A |
| Programming Assignment 5 | April 3 | April 17 | N/A | N/A |
| Written Assignment 6 | April 10 | April 17 | N/A | N/A |
| Programming Assignment 6 | April 9 | April 24 | Download | N/A |
| Written Assignment 7 (Optional) | April 10 | April 24 | N/A | N/A |
| Programming Assignment 7 (Optional) | April 9 | April 24 | N/A | N/A |
| Lab exercise | Date | Topic | Source Code |
|---|---|---|---|
| Lab exercise 1 | Jan 10 | Programming in Java | N/A |
| Lab exercise 2 | Jan 17 | List, stack and queue | N/A |
| Lab exercise 3 | Jan 24 | Linked list | Download |
| Lab exercise 4 | Jan 31 | Binary tree | Download |
| Lab exercise 5 | Feb 7 | Hash | Download |
| Lab exercise 6 | Feb 14 | Palindrome | N/A |
| Lab exercise 7 | Feb 21 | Array based binary min-heap | N/A |
| Lab exercise 8 | Feb 28 | Dijkstra's algorithm (Shortest Path Problem) | N/A |
| Lab exercise 9 | Mar 6 | Depth-first Search algorithm | N/A |
| Lab exercise 10 | Mar 20 | Finding Spanning tree in un-weighted graph | N/A |
| Lab exercise 11 | Mar 27 | Prim's algorithm - Solving minimum spanning tree problem in a weighted graph | N/A |
| Lab exercise 12 | April 3 | Application - Game tree | N/A |