Course Description
Static and dynamic data structures emphasizing binary trees and graphs. Advanced programming techniques. Advanced sorting and searching algorithms. Hashing techniques. Performance analysis. Methods of developing large applications programs. Prerequisite: Grade of at least C- in CSC 220 or CSC 230 and in CSC 250 or MAT 253.
Syllabus
Student Learning Outcomes, Goals, Objectives:
The goal of this course is to help students understand the fundamentals of static and dynamic data structures emphasizing binary trees and graphs, and advanced programming techniques such as advanced sorting and searching algorithms, hashing techniques, and performance analysis. They will also practice methods of developing large applications programs.
Students successfully completing this course will be able to:
Understand and use the advanced features of Java such as inheritance and generics
Understand and use linear and non-linear data structures
Have a solid introduction to advanced programming techniques and performance analysis
Greatly improve their programming ability through the study of advanced data structures and through programming practices
Course Grading Information:
Activity/Performance Measure | Percentage/Points |
|---|---|
Assignments | 35% |
Project | 15% |
Tests | 50% |
Grading Scale
Percentage | Letter Grade |
|---|---|
94-100 | A |
90-93 | A- |
87-89 | B+ |
84-86 | B |
80-83 | B- |
77-79 | C+ |
74-76 | C |
70-73 | C- |
67-69 | D+ |
64-66 | D |
60-63 | D- |
<59 | F |
Attendance/Participation:
Attendance/participation is not a graded component included in the student's final grade for this course.
Course Materials Purchased by the Students:
Mark Allen Weiss, Data Structures & Problem Solving Using Java, 4th Edition, Addison-Wesley, ISBN-13: 978-0-321-54140-6 or ISBN-10: 0-321-54140-5.
Scholarly Perspectives
This course engages diverse scholarly perspectives to develop critical thinking, analysis, and debate and inclusion of a reading does not imply endorsement.