Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3...

6
Review for Final Exam – cs411/511 • Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions, 2 points each) Programming Questions (3 questions, 5 points each) Hash Tables (2 questions, 5 points each) Stacks, Queues, Lists, Search, and Sort (2 questions, 5 points each) Binary Trees (2 questions, 5 points each) Balanced Trees (2 questions, 5 points each) Multiway Trees and External Storage (2 questions, 5 points each) Graph Algorithms (2 questions, 5 points each)

Transcript of Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3...

Page 1: 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 Final Exam – cs411/511

• Definitions (5 questions, 2 points each)

• Algorithm Analysis (3 questions, 3 points each)

• General Questions (3 questions, 2 points each)

• Programming Questions (3 questions, 5 points each)

• Hash Tables (2 questions, 5 points each)

• Stacks, Queues, Lists, Search, and Sort (2 questions, 5 points each)

• Binary Trees (2 questions, 5 points each)

• Balanced Trees (2 questions, 5 points each)

• Multiway Trees and External Storage (2 questions, 5 points each)

• Graph Algorithms (2 questions, 5 points each)

Page 2: Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,

Definitions Algorithm Analysis

• Definitions– Review all of the definitions discussed in class

– Review the previous quiz answers

• Algorithm Analysis– Review all of the complexities that we discussed

– Consider best case, worst case, and average case

– Be able to explain why an algorithm has a given complexity

Page 3: Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,

General QuestionsPrograming

• General Questions– Review all of the previous quizzes– Review tradeoffs between data structures and

algorithms as discussed in class– Review key parts of algorithms – Review situations for which certain structures or

algorithms apply

• Programming code– Be able to declare nodes for each data structure– Be able to show code for basic methods relating to

linked lists, stacks, queues, sorts searches, and heaps

Page 4: Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,

Hash Tables Stacks/Queues/Lists/Search/Sort

• Hash Tables– Be able to insert elements into hash tables using linear

probing, quadratic probing, secondary probing– Be able to show separate chaining in pseudo code

• Stacks/Queues/Lists/Search/Sort– Thoroughly understand: push, pop, insert, remove, find

algorithms– Thoroughly understand binary and linear search,

insertion/selection/bubble/quick sort/heap sort/merge sort algorithms

Page 5: Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,

Binary TreesBalanced Trees

• Binary Trees– Find, Insertion, deletion, find max, find min,

find successor, find predecessor– In-order, post-order, pre-order traversals– Heap creation, trickle-down, trickle-up, remove

min, adjust min, insert, remove

• Balanced Trees– AVL, Splay, Red-Black Algorithms for

insertion

Page 6: Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,

Multiway TreesGraph Algorithms

• Multiway Trees– B-trees, 2-3-4 trees

• Graph Algorithms– Kruskal and Prim spanning tree algorithms– Dykstra’s shortest path algorithm– Topological sorts– Breadth First and Depth First Search– Approaches to Represent graphs in memory