Virginia Tech®home

ECE 2574 - Data Structures and Algorithms (3C)

Course Description

Introduces fundamental data structures, algorithms, and abstract data types. Main topics include data structures such as arrays, linked lists, stacks, queues, graphs, and trees, and algorithms such as those that are used for list manipulation, graph searches, sorting, searching, and tree traversals. Implementation of data structures and algorithms in C++.

Why take this course?

This is the second course in computer programming for Computer Engineering (CpE) majors and is based on the recommended curriculum of the Association for Computing Machinery (ACM). It provides the foundation for other courses in the CpE curriculum such as Object-Oriented Design, Data Structures and File Management, and Operating Systems. The course covers the fundamentals of computer programming including data structures such as arrays, lists, stacks, queues, and trees, and algorithms such as list manipulation, sorting, graph searches, and tree traversals. The course thus provides a foundation for CpE students in computer programming.

Learning Objectives

  • design algorithms for solving problems that use data structures such as arrays, linked lists, stacks, queues, graphs, and trees, and algorithms such as those that are used for list manipulation, graph manipulation (e.g., depth-first search), sorting, searching, and tree traversals
  • implement algorithms in C++ using good programming style.