Mar 29, 2024  
2021-2022 Catalog 
    
2021-2022 Catalog [ARCHIVED CATALOG]

CS 232 - Advanced Data Structures


Credit Hours: 4

A study of advanced abstract data types used in computer science. The course will include a review of the basic data structures such as stacks, queues (including priority queues) and linked lists. Major topics will include trees, tables, hash tables, graphs, primary and secondary memory,  searching and sorting. Measures of efficiency and complexity analysis will be applied throughout the course. A higher level language such as C++, including STL, will be used. Several programming projects will be required

Course Outcomes
Upon completion of this course, the student will be able to:

  • describe and explain: (a) the concept of an abstract data type (ADT) and (b) different algorithmic strategies;
  • design, write, execute, and debug programs in C++;
  • apply measures of efficiency for algorithms and ADTs and interpret the results;
  • explain and describe the structure representation and access procedures for ADTs including arrays, stacks, queues, linked lists, trees, graphs, and files;
  • explain and describe the applications of ADTs including arrays, stacks, queues, linked lists, trees, graphs, and files;
  • explain and describe different search and internal sorting algorithms;
  • explain and describe the structure, representation, and access procedures for static and dynamic tree tables and hash tables;
  • explain and describe the applications of static and dynamic tree tables and hash tables;
  • identify problems where advanced ADTs are appropriate and select or design the most suitable ADT for the given task;
  • design, implement, and use advanced ADTs;
  • identify and perform all phases of the software system development process;
  • write software documentation, including user and programmer manuals; and
  • technology objectives: Students will be able to demonstrate “hands on ” proficiency in using current hardware, software tools and languages to accomplish all of the above course objectives.


Prerequisites: CS 132
S (N)