EEL 4851 Data Structures

Spring 2007

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)

Goto: Links, Syllabus, Grades

Grades

Labs

Syllabus

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

Links: