Instructor: | Dr. Lotzi Bölöni |
Office: | ENGR III - 319 |
Phone: | 407-823-2320 |
E-mail: | lboloni@eecs.ucf.edu |
Web Site: |
http://www.eecs.ucf.edu/~lboloni/Teaching/EEL4851_2007/index.html
The assignments and the other announcements will be posted on the course web site |
Classroom: | ENG 1 - 417 |
Class Hours: | Tuesday,Thursday 7:30 - 8:45 |
Office Hours: | Tuesday, Thursday 13:00-16:00 or by appointment |
Grader: | Hassan Abbas <hassan.abbas@gmail.com> |
Lab assistants: |
Mingyu Zhong <myzhong@ucf.edu> - Wednesday 18:00 - 20:50 Ehsan Ghaneie <ehsan.ghaneie@gmail.com> - Monday 13:30 - 16:20, Friday 13:30 - 16:20 |
Pre-requisites: | Basic knowledge of a high-level programming language (Java, C, C++ or C#) |
Text: | Mark Allen Weiss: Data Structures and Problem Solving Using Java, 3/E |
Grading: | Homework: 20% Labs: 20% Midterm Exam: 30% Final Exam: 30% Standard 90/80/70/60 scale will be used for final grades (curved if necessary) |
Date |
Topic |
Lecture Notes, Readings, Homeworks |
Jan. 9 |
Administrativia Importance of data structures and algorithms -example of binary searching |
|
Jan. 11 |
Simple data types in Java -primitive data types |
|
Jan. 16 |
-arrays -using classes to represent structures |
|
Jan. 18 |
Algorithm analysis -Big Oh. -Binary search |
[slides] Algorithm Analysis [code] BinarySearch.java |
Jan. 23 |
||
Jan. 25 |
||
Jan. 30 |
-Maximum subsequence sum |
[code] MaxSumTest.java |
Feb. 1 |
Linked lists |
[slides] Linked Lists [code] LinkedList.java [code] LinkedListIterator.java |
Feb. 6 |
Trees -representations -Unix directories -operations on trees, merge Lecture by Linus Luotsinen |
[slides] Trees |
Feb. 8 |
-tracing tree traversal algorithms -non-recursive depth first traversal -breadth first travelsal |
Feb. 13 |
Binary search trees -find, findMin, findMax (recursive and non-recursive) -insert -remove |
[slides] Binary Search Trees Homework 1 - due February 27 |
Feb. 15 |
-order statistics for binary trees |
|
Feb. 20 |
Midterm review | |
Feb. 22 |
Midterm examination | |
Feb. 27 |
||
Mar. 1 |
||
Mar. 6 | Hash tables |
[slides] Hash Tables |
Mar. 8 |
-sorting and cryptographic hashcodes for searching for duplicates |
|
Mar. 13 |
spring break |
|
Mar. 15 |
spring break |
|
Mar. 20 | Sorting -basics, comparators -merge sort performance analysis -binary tree sort |
|
Mar. 22 |
-insertion sort, performance analysis -Shell sort, performance analysis |
[slides] Sorting |
Mar. 27 |
-quick sort performance analysis | |
Mar. 29 |
-quick select, performance analysis -tracing sorting algorithms |
|
Apr. 3 | Graph algorithms -graph representations |
Homework 2 - due April 19 [slides] Graphs Dijskra's algorithm applet |
Apr. 5 |
-shortest path |
|
Apr. 10 |
-topological sorting |
|
Apr. 12 |
||
Apr. 17 |
Review for final exam |
|
Apr. 19 |
Final exam |
|