Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE 312 Software Design and Implementation I

Similar presentations


Presentation on theme: "EE 312 Software Design and Implementation I"— Presentation transcript:

1 EE 312 Software Design and Implementation I
Exam 2 Review EE 312 Software Design and Implementation I

2 Exam Format 110 Total Points
60 Points Writing Programs 20 Points Tracing Algorithms, determining results, and drawing pictures 30 Points Short Answer Note: These point values are approximations Note: The values on the categories will not add up to the total points because categories overlap.

3 Example Programming Problem
Given the description of the BST_312 at the end of the exam, write the recursive insert function.

4 Example Tracing Problem
Given the following array, what would be the contents after the 4th iteration of a insertion sort?

5 Example Short Answer Explain a reasonable way to choose the pivot for a quicksort if you do not know the relative order of the elements in the data? Draw a BST after the following elements have been added: (12, 34, 22, -3, 42, 17)

6 OOP, STL,Templates ?? Points Class structure
Instance and Class variables Understand Constructors and Destructors Default and overridden How and when they are called Calling instance functions How to override relational operators and why they are necessary for container classes.

7 OOP, STL,Templates (cont.)
Templated Classes and Functions You will not have to write any template code. How to use vectors. Understand the UtPod and Go Fish programs.

8 Analysis of Algorithms (still important)
5 points Don’t memorize definition Does the amount of work depend on the size of the input? Should be able to rank as faster or slower Be able to analyze algorithms and code and determine Big O time analysis Especially most common. O(1), O(n), O(n2), O (log2n) Look for loops How fast does the problem shrink?

9 Trees 40 Points Definitions General Trees vs. Binary Trees
Terminology: path, depth, height, etc. General Trees vs. Binary Trees Tree Traversals Preorder Inorder Postorder Binary Search Trees

10 Trees (cont.) Binary Search Tree Be able to code anything from BST_312
Insert Delete Find Count Nodes Be able to code anything from BST_312 Make sure you understand the recursive and iterative solutions for each function.

11 Recursion 35 Points Understand
Base case Smaller caller General case Will have to write a recursive functions Be able to do time analysis of a recursive function Understand math stuff, recursive flood fill and the BST programs.

12 Sorting 20 Points Algorithms Time and space considerations O(n2) sorts
Will not have to code the sorts Know the algorithms REALLY WELL! Will likely have to draw, trace, or produce psuedo-code Time and space considerations O(n2) sorts Selection sort, Insertion sort O(nlog2n) sorts Mergesort, Quicksort

13 Not on this exam Hashing Code from book
Only concepts covered in class or on assignments

14 How to Study Review the programs. Look at sorts in a lot of detail.
Rewrite them if you have time (especially the parts you had trouble with) Look at sorts in a lot of detail. Look at other recursive functions (BSTs, linked lists, etc.) Use the exam for clues on the other problems and for help with syntax. Don’t stay up late!! Get some sleep and eat a good breakfast.

15 What to bring Pencils and erasers We will provide scratch paper
No calculators

16 Questions


Download ppt "EE 312 Software Design and Implementation I"

Similar presentations


Ads by Google