Course                  CSC 220 Data Structure

Description          Data Structure is an essential and integral component of  software design and development, that is part of software engineering practice. We typically design and model information (data abstraction) & logic (algorithm) representing solutions necessary for software applications.
Our main objective is to enhance students' proficiency in the areas of software design and development, data structures, and software engineering.

                        In this class, we will study a principle of the design, implementation and run-time analysis of important data structures and algorithms. We will cover but not limit to important data structures such as sorted arrays, linked lists, stacks, queues, and trees. An approach based on abstract data types, standard design notation/representation such as UML  will be emphasized. Programming assignment will be in Java.

Prerequisites     CSC 120 with C and better

Time & Room     M-W-F 2:00pm-3:15pm, Nethken 105

Course URL

Instructor          Dr. Chokchai (Box) Leangsuksun

Office                Nethken 237

Office Hours        M-W-F 8am-10:00am. T-Th 10:00pm-12:00pm or by an appointment

Phone                   257-3291


.NET passport  (IM, VOIP SIP phone)

Grader               Sonal Dekhan,

Texts                 Data Structure and Algorithm in Java, 2nd Edition

 by Robert LaForce

 Publisher: Sam Pub Co; ISBN: 0672324539; (December 2002).

 In addition to materials from the above main textbook, Ill provide more references (URL or   some  books) when we discuss on some particular topics in the programming projects.

 Any of your favorite JAVA books

 Reference: Scott Kendall, Unified Process Explained, The, 1/e, ISBN-0-201-74204-7

Grading Policy    5-8 Programming Assignments    40%    

                         Homework assignments            10%

                         Class Attendance                    5%    

                         Midterm Examination                15%     Tuesday, April 16, 2003

                         Final Examination (comp.)         30%     Thursday, May 21, 2003


Class Materials

Date Topics
3/12/2003 Class syllabus and Introduction to UML (pdf version)
3/14/2003 Introduction to UML and homework 1 (pdf version)
3/17/2003 Intro to OO with the UML flavor
3/19/2003 Intro to OO with the UML flavor
3/21/2003 Chapter 2 Array and Array Applet and a class example
3/24/2003 Class assignment No2
3/26/2003 Simple Java interface Sample, MyArray and ant zip file, source code
3/28/2003 source code and Chapter 3 Simple  Sorting, bubble sort. Peer Evaluation form.
3/31/2003 Bubble sort applet, selection sort applet, insertion sort applet, Insertion sorting with a Person objectHomework no 3 (Programming assignment & pdf version)
4/4/2003 Chapter 4 Stack & Queue Stack applet, Queue applet and Priority Queue applet., and

4/7/2003 Homework no 4 (an individual' written assignment)
4/9/2003 (infix to postfix transformation)
4/11/2003 Postfix evaluation codeChapter 5 Linked Lists
4/14/2003  Chap 5 Linked Lists, homework 4 solutions and Midterm exam Review
4/16/2003 Midterm  Exam
4/18/2003 Easter Holiday 
4/21/2003 Easter Holiday 
4/23/2003 Midterm exam solution, a final project handout, Chapter 6 recursion
4/25/2003 Intro to XML
4/28/2003 continue XML intro and final project discussion
4/30/2003 sample XML demo files
5/2/2003 Final project design and progress reports
5/5/2003 Diva & Final project design and progress reports
5/7/2003 Thread and Timer class and socket sample codes (Client and Server)
5/9/2003 Chapter 8 Binary Tree and Binary Tree applet
5/12/2003 Chapter 11 Hash Table, Hash Applet, Hash Chain and Hash Double
5/14/2003 Chapter 13 Graph & homework 5, Graph Applet
5/16/2003 Please help doing yet another survey to  improve technology supports for our classes. You can go to and click on the "COES KSD 5 Computer Assisted Class Satisfaction Survey" and enter the password "COES" (without the quotes) to take the survey. Thanks! Box.

Final review and take home question

5/19/2003 Final Presentation
5/21/2003 Final Exam (comprehensive)