Presentation is loading. Please wait.

Presentation is loading. Please wait.

CIS 200 Final Review. New Material Sorting Selection Sort  Repeated scan of list for smallest/largest value  Each swap with item in correct spot 

Similar presentations


Presentation on theme: "CIS 200 Final Review. New Material Sorting Selection Sort  Repeated scan of list for smallest/largest value  Each swap with item in correct spot "— Presentation transcript:

1 CIS 200 Final Review

2 New Material

3 Sorting

4 Selection Sort  Repeated scan of list for smallest/largest value  Each swap with item in correct spot  Big O, N-1 Passes  Probes – O(N^2)  Data Movements – O(N)

5 Insertion Sort  Like cards being one at a time  Array is split into 2 logical parts, sorted and unsorted  On each pass, next item from unsorted walks (via swaps) to correct position in sorted portion  Big O, N-1 passes Best, Worst, Ave. cases  Best – O(N)  Worst – O(N^2), T(N) =1/2N^2 – 1/2N  Avg – O(N^2), T(N) = 1/4N^2…

6 Merge Sort Recursive 1.Divide list into 2 parts 2.Sort each part using recursion 3.Combine the 2 (now sorted) parts into one sorted list Big O  Best, Avg, Worst – O(N log2 N)

7 Quick Sort  Partition is the key Two approaches  Dr. Wright’s  Text, from E18.10, p. 745 Big O  Worst case is when pivot is extreme value (min or max)  Already sorted list!  O(N^2)  Best/Avg  O(N log2 N)  Really is twice as fast as merge sort on average

8 Data Structures

9 Linked List

10 Doubly Linked List

11

12

13 Queue

14

15 Stack

16

17 Binary Search Tree  How to add items  Show a well-balanced BST – Add in this order: 9, 7, 12, 15, 2  Show a poorly balanced BST – Add in this order: 2, 7, 9, 12, 15  How to search  Show Inorder traversal in BST

18 Traversals  Preorder  Inorder  Postorder http://www.cs.cmu.edu/~adamchik/15-121/lectures/Trees/trees.html

19 Generics  Generic methods  Generic classes

20 .NET Collections  Esp. Hash Table  Collisions  Bucket – Linked List  Load Factor

21 Test 01 Material

22 Memory Management  C, C++ - Have to “allocate” memory  Forgetting to “free” results in memory leaks  “Garbage Collector” Rounds up and “reclaims” memory  Variables that drop out of “scope” will be collected  Temporary values inside methods reclaimed on method exit  Generally uncontrolled by the developer

23 LINQ Language Integrated Query  Perform Queries Against Objects, Data

24 LINQ Keywords  “from” - Data Source  “where” – Filters the source elements with Boolean expressions  “select” – Choosing the data type to work with  “group” – Groups results according to a desired key value  “orderby” – Sorts the query results in ascending or descending order based on a comparer  “let” – Introduce a variable for query use  Select new creates anonymous class as result set

25

26 Namespaces, Scope Classes, often with common functionality, bundled together  System.Console  System.Collections.Generic  System.Linq Scope  “private” – Can only be accessed by the class, object itself  “protected” – Can only be accessed by the class, object, or any child classes, objects  “public” – Available access for all

27 Constructors C#,.NET compiler provides a ‘free’ constructor - Default  No parameters  When a new constructor is created, ‘free’ constructor goes away  Constructors can be “connected” with “this”

28

29 Interfaces  Object used for creating “interfaces”, common code  Classes “implement” an interface  All methods, properties are “abstract” in an interface  Objects that implement interface can be grouped  List  IPayable, IDisposable, etc

30

31 Inheritance  Classes with child or children classes  Can be used to “share” common code properties  Allows for “unique” objects, while reducing code  Object -> Person -> Student  Object -> Person -> Employee

32 Polymorphism  Override  Virtual  abstract

33 Inheritance - Keywords  “abstract” – Methods marked MUST be overridden  Class declared with abstract prevents creation with “new”  “virtual” – Methods marked CAN be overridden  Controls “how” other classes inherit information from the class  Private, protected, public – Used to control what is inheritance

34

35

36 Casting  Convert one type to another  Integer to String  Decimal to Integer  Byte to Integer  C#,.NET will know how to “box” and “unbox” types  Decimal -> Object -> Integer  Remember back to the Person – Student relationship  We can “cast” Person to Student both ways

37 Will compile, But will throw an EXCEPTION at runtime Will cast to student just fine

38 Exceptions and Exception Handling  Exceptions are…  “Exceptional” events  Unexpected events, errors during runtime  Unhandled exceptions? Stack trace and application death  Handled with try/catch/finally blocks  Try block “attempts” to run the code in question  Catch block handles the exception(s) that may occur  Finally block, optional, always executes

39

40

41 Vs. multiple catches  What order must the catch clauses appear?

42 Test 02 Material

43 Windows Forms, GUI Programming  Elements  Textboxes  Tab Groups  Checkboxes  Fields  Menus  Combobox  Event Handlers  Visual Studio Designer

44 Event Handlers  “Events” triggered by end user  Button Press  Key Press  Field Entry  …other GUI modifications or events

45 Role of Delegates in Event Handling  Sender?  E?  Need examples

46 Files and Streams  Files  Objects on Disks  Streams  Data structure that exposes  Read  Write  Synchronous  Asynchronous

47 Write to File

48 Read from File

49 Recursion …a solution strategy that involves a simpler version of the same problem. The problem becomes simplified with each call until we reach a stopping point. Resolution level by level. Useful for  Complex equations (Fibonacci number)  Towers of Hanoi  Binary Searching  Entry point  Stopping point  Deceptively simple

50 Define a Recursion Method What is my base case?  What is the solution to my base case? What is my intermediate case?  What is the solution to the intermediate case?

51 Recursion Example

52

53 Big O  What’s better?  T(N) = 2 * N * N  … 2(N^2)  T(N) = 1 * N * N + 1 * N  … N^2 + N

54 Sample Questions from Blackboard Wiki

55 What is the differences between Panel and GroupBox? Panel  Scrollable  Does not have a caption Groupbox  Not scrollable  Has a caption

56 What is the differences between CheckBox and RadioButton? CheckBox  Offer a “binary” choice  Turn options on / off  True / False  Multiple together RadioButton  Two or more mutually EXCLUSIVE items  … XOR  Multiple Choice Question

57 RadioButton controls become a set of mutually exclusive choices. How?  A group of RadioButtons offer only a single choice to a user  Selecting one will deselect another  Logical XOR  By container the radio buttons are placed in

58 ListBox has four modes of operation, what are they and describe them. None  No items can be selected One  Only one item can be selected MultiSimple  Multiple items can be selected by toggling MultiExtended  Multiple items can be selected AND the user can use SHIFT, CTRL, and ARROw keys to make selections

59 ComboBox has three modes of operation, name and describe each. Simple  List is always visible, text portion editable  User can enter a new value DropDown  List is displayed by clicking down arrow and text portion is editable  User can enter a new value DropDownList  List is displayed by clicking down arrow and text is not editable  Only values in the list can be selected

60 How does the use of object serialization compare to simply writing our data to a text file? Raw Write to Text File  List of “strings”  Will require manual “re- entry” later  Some method, or handler to convert text file to.NET object Object Serialization  Takes state of object, serializes for storage  Reading serialization produces native.NET object

61 The hierarchy of data includes what, and in what order?  (Smallest)  Bits  Bytes  Fields  Records  Files  (Largest)

62 Describe the hierarchy of data elements  Bits  0 or 1  Bytes  8 bits together  Fields  Name, Phone number, Data Dimension  Conveys meaning  Records  Group of related fields  Files  Group of related fields or other data

63 How can REACH further help you today?  Ask Questions Now!  Need to see an Example?  Need to see a concept again?  Need additional help?  Visit us at:  iTech Zone  CRC (Ekstrom Library)  Wednesday & Thursday (12 / 5 - 12 / 6)  9:00AM – 5:00PM  Friday (12 / 7)  9:00AM – 4:00PM


Download ppt "CIS 200 Final Review. New Material Sorting Selection Sort  Repeated scan of list for smallest/largest value  Each swap with item in correct spot "

Similar presentations


Ads by Google