![Page 1: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/1.jpg)
CIS 200 Final Review
![Page 2: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/2.jpg)
New Material
![Page 3: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/3.jpg)
Sorting
![Page 4: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/4.jpg)
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)
![Page 5: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/5.jpg)
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…
![Page 6: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/6.jpg)
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)
![Page 7: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/7.jpg)
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
![Page 8: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/8.jpg)
Data Structures
![Page 9: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/9.jpg)
Linked List
![Page 10: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/10.jpg)
Doubly Linked List
![Page 11: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/11.jpg)
Doubly Linked List
![Page 12: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/12.jpg)
Doubly Linked List
![Page 13: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/13.jpg)
Queue
![Page 14: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/14.jpg)
Queue
![Page 15: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/15.jpg)
Stack
![Page 16: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/16.jpg)
Stack
![Page 17: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/17.jpg)
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
![Page 18: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/18.jpg)
Traversals
Preorder Inorder Postorder
http://www.cs.cmu.edu/~adamchik/15-121/lectures/Trees/trees.html
![Page 19: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/19.jpg)
Generics
Generic methods Generic classes
![Page 20: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/20.jpg)
.NET Collections
Esp. Hash Table Collisions Bucket – Linked List Load Factor
![Page 21: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/21.jpg)
Test 01 Material
![Page 22: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/22.jpg)
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
![Page 23: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/23.jpg)
LINQLanguage Integrated Query
Perform Queries Against Objects, Data
![Page 24: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/24.jpg)
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
![Page 25: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/25.jpg)
![Page 26: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/26.jpg)
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
![Page 27: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/27.jpg)
ConstructorsC#, .NET compiler provides a ‘free’ constructor - Default
No parameters
When a new constructor is created, ‘free’ constructor goes awayConstructors can be “connected” with “this”
![Page 28: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/28.jpg)
![Page 29: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/29.jpg)
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>
IPayable, IDisposable, etc
![Page 30: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/30.jpg)
![Page 31: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/31.jpg)
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
![Page 32: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/32.jpg)
Polymorphism
Override Virtual abstract
![Page 33: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/33.jpg)
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
![Page 34: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/34.jpg)
![Page 35: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/35.jpg)
![Page 36: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/36.jpg)
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
![Page 37: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/37.jpg)
Will compile,But will throw an
EXCEPTION at runtime
Will cast to student just fine
![Page 38: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/38.jpg)
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
![Page 39: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/39.jpg)
![Page 40: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/40.jpg)
![Page 41: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/41.jpg)
Vs. multiple catches
What order must the catch clauses appear?
![Page 42: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/42.jpg)
Test 02 Material
![Page 43: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/43.jpg)
Windows Forms, GUI Programming
Elements Textboxes Tab Groups Checkboxes Fields Menus Combobox
Event Handlers Visual Studio Designer
![Page 44: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/44.jpg)
Event Handlers “Events” triggered by end user
Button Press Key Press Field Entry …other GUI modifications or events
![Page 45: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/45.jpg)
Role of Delegates in Event Handling Sender? E?
Need examples
![Page 46: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/46.jpg)
Files and Streams
Files Objects on Disks
Streams Data structure that exposes
Read Write Synchronous Asynchronous
![Page 47: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/47.jpg)
Write to File
![Page 48: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/48.jpg)
Read from File
![Page 49: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/49.jpg)
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 pointStopping pointDeceptively simple
![Page 50: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/50.jpg)
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?
![Page 51: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/51.jpg)
Recursion Example
![Page 52: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/52.jpg)
Recursion Example
![Page 53: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/53.jpg)
Big O
What’s better? T(N) = 2 * N * N
… 2(N^2)
T(N) = 1 * N * N + 1 * N … N^2 + N
![Page 54: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/54.jpg)
Sample Questions fromBlackboard Wiki
![Page 55: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/55.jpg)
What is the differences between Panel and GroupBox?
Panel Scrollable Does not have a caption
Groupbox Not scrollable Has a caption
![Page 56: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/56.jpg)
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
![Page 57: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/57.jpg)
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
![Page 58: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/58.jpg)
ListBox has four modes of operation, what are they and describe them.
None No items can be selected
One Only one item can be
selectedMultiSimple
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
![Page 59: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/59.jpg)
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
![Page 60: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/60.jpg)
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
![Page 61: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/61.jpg)
The hierarchy of data includes what, and in what order?
(Smallest) Bits Bytes Fields Records Files (Largest)
![Page 62: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/62.jpg)
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
![Page 63: CIS 200 Final Review. New Material Sorting Selection Sort Repeated scan of list for smallest/largest value Each swap with item in correct spot](https://reader036.vdocument.in/reader036/viewer/2022062805/5697bfbe1a28abf838ca2a57/html5/thumbnails/63.jpg)
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