CSC 1052
Algorithms and Data Structures II
4 Credits Format: lecture Level: undergraduate
Description: Object-oriented design: inheritance, interfaces, polymorphism; problem analysis; recursion; abstract data types; dynamically linked structures; linear data structures: stacks, queues, lists, vectors; sorting and searching; event-driven programming; graphical user interfaces.
Textbooks:
- Java Software Solutions (with Backpack Reference), 5th Edition, Lewis and Loftus, Addison Wesley
- Object-Oriented Data Structures using Java, 2nd Edition, Dale, Joyce and Weems, Jones and Bartlett
Objectives:
- Reinforce and expand on the material of CSC 1051, with an even stronger emphasis on object-oriented design, graphical user interface development, and problem analysis and solution design.
- Establish an understanding of interfaces, inheritance, and polymorphism.
- Establish an understanding of recursion and recursive programming.
- Establish an understanding of basic sorting and searching algorithms, including selection sort, insertion sort, and binary search.
- Establish an understanding of linear data structures, including the specification, implementation, and use of stacks, queues, and lists.
- Establish an understanding of basic algorithm analysis issues, including time/space tradeoffs, algorithm growth rates, and asymtotic boundaries such as Big O.
Coordinator: Dr. Dan Joyce
Prerequisites: CSC 1051
Required For:
- Computer Science Major
- Computer Science Minor
- Information Science Major
- Information Science Minor
- Information Systems Major
- Computer Engineering Major