Comp 122/L

advertisement
Comp 182/182L
Data Structures and Program Design
Lecture Section Number: 14390 Lab Section Number: 14391
FALL 2010
Instructor:
Office:
Email:
Web Page:
Office Hours:
Diane Schwartz
4401 Jacaranda Hall
diane.schwartz@csun.edu
www.csun.edu/~dls
Wednesday 12:15 – 1:15
COMP 182 Meets:
COMP 182L Meets:
MW 0930 – 1045 in JD 3508
MW 1100 – 1215 in JD 2214
Course Description: Introduction to data structures and algorithms. Design and implementation of array
lists, linked lists, queues, stacks, binary trees and tables. Recursion and time complexity of algorithms.
Comparative study of sorting and searching techniques.
Prerequisites: Math 104 or higher, Comp 110/L (C or better), Freshman Composition.
Comp 182 and Comp 182L must be taken at the same time.
Required Textbook: Data Abstraction and Problem Solving with Java
( 2nd Edition) by Frank Carrano and Janet Prichard , Addison Wesley
Software: We will be programming in Java with Java 6 and jgrasp in the lab. You can download Java 6
from http://java.sun.com/javase/downloads and download jgrasp ( java development environment) from
http://www.eng.auburn.edu/grasp .
On-line Java Documentation: http://java.sun.com/javase/6/docs/api/index.html
Grading Policies: The lecture and lab are integrated. You will receive the same grade for both the lecture
and the lab. Plus and minus grading will be used. Your grade will be weighted as follows:
Midterm I
Midterm II
Final Exam
Lab Programming Projects
Class Participation
15%
15%
30%
35%
5% ( Based on lecture + lab attendance)
Course Goals ( from the student perspective):
1. To improve your ability to solve problems using computer programming.
2. To learn how to implement and use the basic programming data structures in Java
3. To improve your ability to design, write, test and debug computer programs.
4. To learn how to analyze algorithms.
5. To learn a variety of computer searching and sorting techniques.
Laboratory Component
Students will design, implement and test Java programs related to material covered in lecture and in text.
Lab projects should be your own work unless a team project has been assigned.
Revised 9/28/10
Comp 182
Week
1
2
3
4
5, 6
7
8
9
10
11
12
13
14
15
16
Dec 15
Lecture Schedule (approximate)
Lecture Topics
Review, Java classes, Java Exceptions, Java IO
Data Abstraction
ArrayList class from Java API
Linked Lists,
Linked Lists
Stacks
Stacks and Queues
Queues
Recursion
Recursion
Trees and Binary Trees
Binary Trees
Binary Trees
Algorithm Efficiency, Sorting, Searching
Catch Up Week
Final Exam ( Wed Dec 15 8:00 – 10:00 am)
Two midterms will be scheduled during the semester.
Midterm I : Sept 29, 2010
Midterm II: TBD
Text Readings
Ch 1
Ch 4
Ch 4
Ch 5
Ch 5
Ch 7
Ch 7,8
Ch 8
Ch 3
Ch 6
Ch 11
Ch 11
Ch 11
Ch 10
Download