ELEC 278 - Fundamentals of Information Structures and Software Engineering - Winter 2013

Course Outline

This course covers the fundamentals of Data Structures and Algorithms. Topics covered include arrays, linked lists, stacks, queues, deques, asymptotic notation, hash tables and scatter tables, recursion, trees and search trees, heaps and priority queues, sorting, and graphs. Software engineering concepts will be introduce, and some application case studies will be reviewed. The 'C' language will be introduced.

At the conclusion of the course, the student will be able to :

q  analyze a problem

q  make a judicious selection of which DS&A to apply and be able to justify your choice, and

q  have the skills to implement the solution.

The following topics will be covered:

 

Lecture hours

Topic

 

1

Introduction

 

2

Foundational Data Structures

 

1

Stacks, Queues, and Deques

  1

List-Queue Example

 

1

Recursion

 

2

Asymptotic Notation

 

6

Trees and Search Trees

 

2

Heaps and Priority Queues

 

4

Hash Tables and Scatter Tables

 

6

Sorting

 

4

Graphs

 

4

Software Engineering Concepts & Applications

 

1

Review