! Mon, May 5, 2:00PM to 4:30PM. ! Closed book, closed notes, clean desk. ! Comprehensive (covers entire course) ! 30% of your final grade

Similar documents
! Determine if a number is odd or even. ! Determine if a number/character is in a range. - 1 to 10 (inclusive) - between a and z (inclusive)

l Determine if a number is odd or even l Determine if a number/character is in a range - 1 to 10 (inclusive) - between a and z (inclusive)

! Determine if a number is odd or even. ! Determine if a number/character is in a range. - 1 to 10 (inclusive) - between a and z (inclusive)

Midterm Exam #2 Review. CS 2308 :: Spring 2016 Molly O'Neil

! Determine if a number is odd or even. ! Determine if a number/character is in a range. ! Assign a category based on ranges (wind speed)

Cpt S 122 Data Structures. Course Review FINAL. Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University

Cpt S 122 Data Structures. Course Review Midterm Exam # 1

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

Course Review for. Cpt S 223 Fall Cpt S 223. School of EECS, WSU

12 Abstract Data Types

CS24 Week 4 Lecture 2

Name CPTR246 Spring '17 (100 total points) Exam 3

Stack and Queue. Stack:

Ch. 18: ADTs: Stacks and Queues. Abstract Data Type

CS2013 Course Syllabus Spring 2018 Lecture: Mon/Wed 2:00 P.M. 2:50 P.M. SH C259 Lab: Mon/Wed 2:50 P.M. 4:00 P.M. SH C259

Contents. Preface. Introduction. Introduction to C Programming

CSCE 210/2201 Data Structures and Algorithms. Prof. Amr Goneid

CMSC Introduction to Algorithms Spring 2012 Lecture 7

Data Structures and Algorithms Winter Semester

Final Exam. Final Exam Review. Ch 1: Introduction: Object-oriented analysis, design, implementation. Exam Format

University of Illinois at Urbana-Champaign Department of Computer Science. First Examination

Information Science 2

CS 1114: Implementing Search. Last time. ! Graph traversal. ! Two types of todo lists: ! Prof. Graeme Bailey.

cs Java: lecture #6

CSCE 210/2201 Data Structures and Algorithms. Prof. Amr Goneid. Fall 2018

! A data type for which: ! In fact, an ADT may be implemented by various. ! Examples:

Data Structure (CS301)

Linked List. April 2, 2007 Programming and Data Structure 1

ECE250: Algorithms and Data Structures Midterm Review

Cpt S 122 Data Structures. Data Structures

(8 1) Container Classes & Class Templates D & D Chapter 18. Instructor - Andrew S. O Fallon CptS 122 (October 8, 2018) Washington State University

First Examination. CS 225 Data Structures and Software Principles Spring p-9p, Tuesday, February 19

Lecture 18 Tao Wang 1

CISC 3130 Data Structures Spring 2018

Wentworth Institute of Technology COMP201 Computer Science II Spring 2015 Derbinsky. Stacks and Queues. Lecture 11.

Introduction to the Stack. Stacks and Queues. Stack Operations. Stack illustrated. elements of the same type. Week 9. Gaddis: Chapter 18


QUIZ on Ch.5. Why is it sometimes not a good idea to place the private part of the interface in a header file?

CS 216 Exam 1 Fall SOLUTION

Computer Programming II C++ (830)

DATA STRUCTURES USING C

Introduction to Programming System Design CSCI 455x (4 Units)

Chapter 18: Stacks And Queues

Matriculation number:

Stacks and Queues. CSE 373 Data Structures Lecture 6

1 P age DS & OOPS / UNIT II

! A data type for which: ! An ADT may be implemented using various. ! Examples:

[CS302-Data Structures] Homework 2: Stacks

CS301 - Data Structures Glossary By

CS 115 Exam 3, Spring 2010

OBJECT-ORIENTED PROGRAMMING CONCEPTS-CLASSES II

Data Structures. Outline. Introduction Linked Lists Stacks Queues Trees Deitel & Associates, Inc. All rights reserved.

Computer Programming II Python

Revision Statement while return growth rate asymptotic notation complexity Compare algorithms Linear search Binary search Preconditions: sorted,

CSE030 Fall 2012 Final Exam Friday, December 14, PM

Chapter 18: Stacks And Queues. Pearson Education, Inc. Publishing as Pearson Addison-Wesley

double d0, d1, d2, d3; double * dp = new double[4]; double da[4];

Definition of Stack. 5 Linked Structures. Stack ADT Operations. ADT Stack Operations. A stack is a LIFO last in, first out structure.

CS2013 Course Syllabus Spring 2017 Lecture: Friday 8:00 A.M. 9:40 A.M. Lab: Friday 9:40 A.M. 12:00 Noon

! A data structure representing a list. ! A series of nodes chained together in sequence. ! A separate pointer (the head) points to the first

9/19/2018 Programming Data Structures. Polymorphism And Abstract

SYSC 2006 CD. Come to the PASS workshop with your mock exam complete. During the workshop you can work with other students to review your work.

COS 226 Algorithms and Data Structures Fall Midterm

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

COMS W3101 Programming Language: C++ (Fall 2015) Ramana Isukapalli

Lecture 7. Log into Linux New documents posted to course webpage

SAURASHTRA UNIVERSITY

CMSC 341 Lecture 6 Templates, Stacks & Queues. Based on slides by Shawn Lupoli & Katherine Gibson at UMBC

PROGRAMMING IN C++ (Regulation 2008) Answer ALL questions PART A (10 2 = 20 Marks) PART B (5 16 = 80 Marks) function? (8)

Chapter 18: Stacks And Queues

CSE 332: Data Structures. Spring 2016 Richard Anderson Lecture 1

QUIZ Friends class Y;

Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS

Come to the PASS workshop with your mock exam complete. During the workshop you can work with other students to review your work.

CH ALGORITHM ANALYSIS CH6. STACKS, QUEUES, AND DEQUES

Introduction p. 1 Pseudocode p. 2 Algorithm Header p. 2 Purpose, Conditions, and Return p. 3 Statement Numbers p. 4 Variables p. 4 Algorithm Analysis

University of Illinois at Urbana-Champaign Department of Computer Science. First Examination

Today s lecture. CS 314 fall 01 C++ 1, page 1

COMS W3101 Programming Language: C++ (Fall 2015) Ramana Isukapalli

ADT Sorted List Operations

Characters, c-strings, and the string Class. CS 1: Problem Solving & Program Design Using C++

San José State University Department of Computer Science CS-144, Advanced C++ Programming, Section 1, Spring 2018

Largest Online Community of VU Students

Lecture 4 Stack and Queue

Programming. Lists, Stacks, Queues

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Lecture 9 Stacks & Queues

CS 32. Lecture 2: objects good?

+ Abstract Data Types

About this exam review

DEPARTMENT OF COMPUTER APPLICATIONS B.C.A. - FIRST YEAR ( REGULATION) SECOND SEMESTER LESSON PLAN SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Unit 10: Data Structures CS 101, Fall 2018

Introduction to Programming Systems

(the bubble footer is automatically inserted in this space)

Chapter 10 Introduction to Classes

Queues. CITS2200 Data Structures and Algorithms. Topic 5

CMSC 341 Lecture 2 Dynamic Memory and Pointers

CS200 Spring 2004 Midterm Exam II April 14, Value Points a. 5 3b. 16 3c. 8 3d Total 100

Midterm Exam (REGULAR SECTION)

CSE 333 Midterm Exam 2/14/14

Transcription:

Final Exam Review Final Exam Mon, May 5, 2:00PM to 4:30PM CS 2308 Spring 2014 Jill Seaman Closed book, closed notes, clean desk Comprehensive (covers entire course) 30% of your final grade I recommend using a pencil (and eraser) I will bring scratch paper. No calculators. 1 2 Exam Format Example Problems 200 points total (10 or 11 pages): Writing programs/functions/classes/code Multiple choice Tracing code See the lecture notes titled: Final Exam Exercises on the website Demonstrating search/sort algorithms Finding errors in code Short answer 3 4

Chapters 1-7 Review Ch.8: Searching and Sorting Arrays Know how to program with arrays and functions Passing parameters by reference (and value) Passing arrays to functions Overloaded functions Default arguments Be able to process arrays - Be able to find the minimum/maximum value - See review exercises Searching - Linear Search - Binary Search Sorting - Bubble Sort - Selection Sort See review exercises: - Describe algorithms in English - Sample exercises to demonstrate algorithms Be able to find errors in code 5 6 Analysis of Algorithms: efficiency Efficiency - Growth rate functions, which are faster/slower - Use big-o notation - Efficiency of searching/sorting array access and traversal linked list operations - See the Final Exam Review Exercises for good coverage on this 7 Ch 9: Pointers Pointer variables: how to define + initialize Address of (&) and Dereferencing (*) operators Pointers and arrays an array variable is the address of its first element array[index] = *(array + index) Dynamic memory allocation new + delete operators allocate new arrays (Programming Assignment 3) Pointers as parameters (call by reference, arrays) Using pointers with linked lists 8

Ch. 10: Strings and Things Char functions: isalpha, isdigit, islower, tolower,... C-strings: - representation: char array terminated by null character ( \0 ) - library functions: strlen, strcpy, strcmp Predefined string class: - initializing string objects. - operations: =, <<, >>, relational ops, [n] - member functions: length, size, append, at Structures: Ch 11: Structures - Definition (new data type) and variables - How to access members (dot operator) - Operations (which are valid) - Arrays of structures - Pointers to structures (-> operator): s->x (*s).x *(s.x) - Dynamic memory allocation - Use of structures in linked lists (Nodes) 9 10 Be able to write functions that process string data. Ch.13+14: Classes Procedural programming vs object oriented programming Encapsulation, Data hiding, Interface Fundamentals of classes and objects: - Members: variables and functions - private vs public, access rules - declaration and implementation of classes defining member functions overloaded operators - constructors and destructors - copy constructor (default) 11 Ch.13+14: Classes Fundamentals of classes and objects (cont.): - inline member function definitions - instance variables vs static variables - defining instances of a class (objects) - arrays of objects, initialization Pointers to objects - how to declare, assign - using -> - dynamic allocation of objects - when destructor function is called - the this pointer 12

C++ Programming on Linux Basic shell commands, know how to use edit, compile, run (nano, g++, a.out) Compiling multiple files: - How to split up code, what goes where - g++ a.cpp b.cpp - separate compilation g++ -c a.cpp g++ -c b.cpp g++ a.o b.o - makefile: understand the ones used for the Ch. 17: Linked Lists How to define a linked list (node declaration and head pointer definition). Adding a node (insert at front or append) Insert or delete node from the middle of a list - how to advance 2 pointers together - be able to set pointers in general case How to traverse a linked list to - display it, calculate some value - find minimum/maximum - find last node 13 14 assignments, know how to use them Arrays vs Linked Lists Ch. 18: Stacks and Queues Know what ADT, LIFO and FIFO mean Know the 4 basic operations of each data type: pop push isempty isfull enqueue dequeue isempty isfull Understand how to use a stack to perform algorithms done in class Be able to show contents of stack or queue after a series of operations (see Final Exam Review Exercises) 15 Office Hours after last class day Day Date Time Th 5/1 2:30-4:30pm M 5/5 12:00-1:00pm T 5/6 2:30-3:30pm W 5/7 11:00-12:00noon and by appt. 16

How to Study Start with the topics from this set of slides (Final Exam Review). Use the regular semester lectures to make sure you understand the topics. Use the textbook to make sure you understand the lectures about the topics. Do the review exercises on the Final Exam Exercises slides. Go over the exams and assignment solutions (take the exams again, quiz yourself). Discuss with others 17