CIS 350

Data Structures and Algorithm Analysis

Lecture Notes


Course Overview

Abstract Data Types (ADT's)

Built-in Types

Structured Types

Object-Orinted Programming

Stacks

Queues

Program Complexity

Complexity Examples

Complexity Computation Heuristics

More Complexity Examples

Recursion

Simulating Recursion

Pointer Variables

Singly Linked Lists

Linked List Operators

Search

Hash tables

Hash Collision Resolution and Complexity

Trees

Binary Search Tree(BST)

Tree Traversals

AVL Trees

Additional Trees

B-trees

Graphs

Graph Representations

More Graph Terminology

Biconnected Graphs

Euler Circuit

Graph Representations

Augmenting Path

Directed Graphs (Digraphs)

Shortest Path

Topological sorting

Sorting Algorithms