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

Slides:



Advertisements
Similar presentations
0 Course Outline n Introduction and Algorithm Analysis (Ch. 2) n Hash Tables: dictionary data structure (Ch. 5) n Heaps: priority queue data structures.
Advertisements

Graphs Chapter 12. Chapter Objectives  To become familiar with graph terminology and the different types of graphs  To study a Graph ADT and different.
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
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.
CS Data Structures II Review & Final Exam. 2 Topics Review Final Exam.
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.
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.
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
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.
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.
Data Structures and Algorithms I
Final Exam Review COP4530.
Final Exam Review CS 3358.
CSCE 210 Data Structures and Algorithms
CSE 326: Data Structures: Advanced Topics
Chapter 5 : Trees.
Topics covered (since exam 1):
Final Review.
CSE 326: Data Structures Lecture #23 Data Structures
Week 11 - Friday CS221.
Titles make PowerPoint happy.
DATA STRUCTURES AND OBJECT ORIENTED PROGRAMMING IN C++
Review for Final Exam Non-cumulative, covers material since exam 2
Lecture 12 Algorithm Analysis
Introduction to Graphs
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.
CS120 Graphs.
Topics covered (since exam 1):
Graph Algorithm.
Topics covered (since exam 1):
Graphs Chapter 13.
Elementary graph algorithms Chapter 22
Graphs Chapter 11 Objectives Upon completion you will be able to:
Algorithms and Data Structures Lecture XII
ICS 353: Design and Analysis of Algorithms
Lectures on Graph Algorithms: searching, testing and sorting
Chapter 6: Transform and Conquer
ICS 353: Design and Analysis of Algorithms
Topics covered (since exam 1, excluding PQ):
ITEC 2620M Introduction to Data Structures
Hashing Sections 10.2 – 10.3 Lecture 26 CS302 Data Structures
Binary and Binomial Heaps
Final Review Dr. Yingwu Zhu.
Definition Applications Implementations Heap Comparison
GRAPHS G=<V,E> Adjacent vertices Undirected graph
Chapter 16 1 – Graphs Graph Categories Strong Components
Review for Final Exam Non-cumulative, covers material since exam 2
Elementary graph algorithms Chapter 22
Lecture 12 Algorithm Analysis
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
Heaps Chapter 6 Section 6.9.
Data Structures and Algorithms I
More on Randomized Data Structures
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Review for Final Exam Non-cumulative, covers material since exam 2 Data structures covered: Treaps Skip lists Hash tables 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.

Treaps Definition Two values associated with each node Key: making it a BST Priority: making is binary min heap Priorities are randomly generated Making treap a BST constructed from a randomly ordered sequence of keys (why?) Main advantages High probability to be balanced (h = O(logn)) Compare with splay tree and RB tree Operations Find: according to key values as if it is a BST Insert: as a leaf first as in BST, then rotate it up to satisfy heap order Delete: rotate the node to be deleted down according to heap order until it becomes a leaf, then delete it. Support set union, partition

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 k pointers (pk-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)

Hashing Hash table Hashing functions Collision management Trading space for time Table size (primes) 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.)

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 Breadth first (with unweighted edges) Dijkstra’s algorithm (with weighted edges) Topological order (for DAG) What is a topological order (definitions of predecessor, successor, strict partial order) Algorithm for topological sort