Review for Final Exam Non-cumulative, covers material since exam 2

Slides:



Advertisements
Similar presentations
Lecture 15. Graph Algorithms
Advertisements

Single Source Shortest Paths
CMSC 341 Binary Heaps Priority Queues. 8/3/2007 UMBC CSMC 341 PQueue 2 Priority Queues Priority: some property of an object that allows it to be prioritized.
TDDB57 DALG-C, DALG Exam Requirements Jan Maluszynski - HT 2006DALG-C.1 TDDB57 – DALG-C Examination Requirements.
Course Review COMP171 Spring Hashing / Slide 2 Elementary Data Structures * Linked lists n Types: singular, doubly, circular n Operations: insert,
Data Structures, Spring 2004 © L. Joskowicz 1 DAST – Final Lecture Summary and overview What we have learned. Why it is important. What next.
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
0 Course Outline n Introduction and Algorithm Analysis (Ch. 2) n Hash Tables: dictionary data structure (Ch. 5) n Heaps: priority queue data structures.
Final Review Dr. Yingwu Zhu. Goals Use appropriate data structures to solve real- world problems –E.g., use stack to implement non-recursive BST traversal,
CS Data Structures II Review & Final Exam. 2 Topics Review Final Exam.
CMSC 341 Binary Heaps Priority Queues. 2 Priority: some property of an object that allows it to be prioritized WRT other objects (of the same type) Priority.
ITEC 2620A Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: 2620a.htm Office: TEL 3049.
CS223 Advanced Data Structures and Algorithms 1 Review for Midterm Neil Tang 03/06/2008.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Review Final.
Review for Exam 1 Topics covered: –Asymptotic analysis –Lists and list implementations Stacks and queues –General trees, binary trees –BST For each of.
Runtime O(VE), for +/- edges, Detects existence of neg. loops
Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,
Review for Exam 2 Topics covered (since exam 1): –Splay Tree –K-D Trees –RB Tree –Priority Queue and Binary Heap –B-Tree For each of these data structures.
Review for Final Exam Non-cumulative, covers material since exam 2 Data structures covered: –Treaps –Hashing –Disjoint sets –Graphs For each of these data.
CMSC 341 Binary Heaps Priority Queues. 2 Priority: some property of an object that allows it to be prioritized WRT other objects (of the same type) Priority.
CSE 340: Review (at last!) Measuring The Complexity Complexity is a function of the size of the input O() Ω() Θ() Complexity Analysis “same order” Order.
Exam 3 Review Data structures covered: –Hashing and Extensible hashing –Priority queues and binary heaps –Skip lists –B-Tree –Disjoint sets For each of.
 Saturday, April 20, 8:30-11:00am in B9201  Similar in style to written midterm exam  May include (a little) coding on paper  About 1.5 times as long.
CSC 2300 Data Structures & Algorithms March 13, 2007 Chapter 6. Priority Queues.
Review for Exam 2 Topics covered: –Recursion and recursive functions –General rooted trees –Binary Search Trees (BST) –Splay Tree –RB Tree –K-D Trees For.
CSE 589 Applied Algorithms Spring 1999 Prim’s Algorithm for MST Load Balance Spanning Tree Hamiltonian Path.
Data Structures and Algorithms I
Final Exam Review COP4530.
Final Exam Review CS 3358.
CSCE 210 Data Structures and Algorithms
Data Structures and Algorithms
CSE 326: Data Structures: Advanced Topics
CSE 373 Topological Sort Graph Traversals
Chapter 5 : Trees.
Topics covered (since exam 1):
Final Review.
CMSC 341 Lecture 13 Leftist Heaps
Review for Final Exam Non-cumulative, covers material since exam 2
Review for Final Exam Non-cumulative, covers material since exam 2
Review for Midterm Neil Tang 03/04/2010
CSE373: Data Structures & Algorithms Lecture 15: Introduction to Graphs Catie Baker Spring 2015.
CSE 326: Data Structures: Midterm Review
More Graph Algorithms.
Review for Exam 1 Topics covered: For each of these data structures
Topics covered (since exam 1):
Graph Algorithm.
Binary Heaps Priority Queues
Graph Algorithm.
Topics covered (since exam 1):
Graphs Chapter 13.
Elementary graph algorithms Chapter 22
Binary Heaps Priority Queues
Lectures on Graph Algorithms: searching, testing and sorting
Chapter 6: Transform and Conquer
Topics covered (since exam 1, excluding PQ):
ITEC 2620M Introduction to Data Structures
Final Review Dr. Yingwu Zhu.
Definition Applications Implementations Heap Comparison
CMSC 341 Lecture 19.
GRAPHS G=<V,E> Adjacent vertices Undirected graph
Review for Final Exam Non-cumulative, covers material since exam 2
Elementary graph algorithms Chapter 22
Important Problem Types and Fundamental Data Structures
Topics covered (since exam 1):
Chapter 14 Graphs © 2011 Pearson Addison-Wesley. All rights reserved.
CSE 326: Data Structures Lecture #24 Odds ‘n Ends
Graph Algorithm.
Data Structures and Algorithms I
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Review for Final Exam Non-cumulative, covers material since exam 2 Data structures covered: Priority queues and binary heaps Hashing Skip lists Disjoint sets Graphs For each of these data structures Basic idea of data structure and operations Be able to work out small example problems Prove related theorems Advantages and limitations Asymptotic time performance Comparison Review questions are available on the web.

PQ and Heap Binary heap Heap operations (implemented with array) Definition: CBT with a partial order (heap order) Why it is good for PQ Heap operations (implemented with array) findMin, deleteMin, insert percolateUp (for insertion), percolateDown (for deletion) Heap construction (heapify), Heap sort Time performance of these operations Leftist tree and leftist heap Why we need this? Definition (npl: null path length) Meld operations and applications insert, deletMin, heap construction

Hashing Hash table Hashing functions Collision management Table size (primes) Trading space for time Hashing functions Properties making a good hashing function Examples of division and multiplication hashing functions Operations (insert/remove/find/) Collision management Separate chaining Open addressing (different probing techniques, clustering problem) Worst case time performance: O(1) for find/insert/delete if  is small and hashing function is good Limitations Hard to answer order based queries (successor, min/max, etc.)

Skip Lists What is a skip list Why need skip lists Nodes with different size (different # of skip pointers) Node size distribution according to the associated probability p Nodes with different size do not have to follow a rigid pattern The expected # of nodes with exactly i pointers (pi-1(1- p)) How to determine the size of the head node (log1/p N) Why need skip lists Expected time performance O(lg N) for find/insert/remove Probabilistically determining node size facilitate insert/remove operations Advantages over sorted arrays, sorted list, BST, balanced BST

Skip list operations Performance find insert (how to determine the size of the new node) Set pointers in insert and remove operations (backLook node) Performance Expected time performance O(lg N) for find/insert/remove (very small prob. of poor performance when N is large) Expected # of pointers per node: 1/(1 - p)

Disjoint Sets Equivalence relation and equivalence class definitions and examples Disjoint sets and up-tree representation representative of each set direction of pointers Union-find operations basic union and find operation path compression (for find) and union by weight heuristics time performance when the two heuristics are used: O(m lg* n) for m operations (what does lg* n mean) O(1) amortized time for each operation

Graphs Graph definitions Adjacency and representation G = (V, E), directed and undirected graphs, DAG path, path length (with/without weights), cycle, simple path connectivity, connected component, connected graph, complete graph, strongly and weakly connectedness. Adjacency and representation adjacency matrix and adjacency lists, when to use which time performance with each Graph traversal: DF and BF Single source shortest path Dijkstra’s algorithm (with weighted edges) Topological order (for DAG) What is a topological order (definitions of predecessor, successor, partial order) Algorithm for topological sort