List Mutation (Module 4) Accumulative Recursion (Module 5) Efficiency (Module 7) Searching & Sorting (Module 8) Dictionaries (Module 9)

Size: px
Start display at page:

Download "List Mutation (Module 4) Accumulative Recursion (Module 5) Efficiency (Module 7) Searching & Sorting (Module 8) Dictionaries (Module 9)"

Transcription

1 Sherry & Pauline

2 List Mutation (Module 4) Review for CS 116!!! Accumulative Recursion (Module 5) Efficiency (Module 7) Searching & Sorting (Module 8) Dictionaries (Module 9) Class Objects (Module 9) Files (Module 10)

3 L33T speak is a different form of writing, usually online. It consists of replacing certain letters with symbols or numbers. Consider the table below of letters, and their corresponding L33T translations. Write a Python function called leet which consumes a list of strings, los, and mutates the list where each string becomes its leet version. The function returns None. Example: L = ["password", "secrets", "CS116 "] leet(l) L = ['p@$$w0r)', '$3(r3+$', '($116']

4 O(1): - +, -, *, /, =, max(a, b), min(a, b) - len(s), s[k], - len(l), L[k], L[3 : 5], L.append(x) - str.isupper(c) #c is a character O(n): - s.count(), s.find(), s.lower(), - L + [x], sum(l), max(l), min(l), L[1: ], list(range(n)), L.count(), L.index(), L.insert(), L.pop(), L.remove() - s + t is O(n + len(t)), L + M is O(n + len(m)) - L[a : b] is O(b - a), so at most O(n) O(n log n): - L.sort()

5 You can find this on page 28, Module 7! Also provided on the exam reference sheet.

6

7

8

9

10

11

12 def selection_sort(l): n = len(l) positions = list(range(n-1)) for i in positions: min_pos = i for j in range(i,n): if L[j] < L[min_pos]: min_pos = j temp = L[i] L[i] = L[min_pos] L[min_pos] = temp Before the loop:!(") Inner loop:!(") each iteration Outer loop:!(") iterations à!(") +!(")!(") =!(n^2)

13 def insert(l, pos): while pos > 0 and L[pos] < L[pos-1]: temp = L[pos] L[pos] = L[pos-1] L[pos-1] = temp pos = pos-1 def insert_sort(l): for i in range(1,len(l)): insert(l,i) insert_sort requires!(") calls insert requires at most!(") while loop iterations Each while loop body requires!(1) steps à!(")!(")!(1) à!("^2)

14 def mergesort(l): if len(l) < 2: return mid = len(l)//2 L1 = L[:mid] L2 = L[mid:] mergesort(l1) mergesort(l2) merge(l1,l2,l)!(") = #(") + 2!("/ 2) #(" log ")

15 key : value #a key value pair d[key] => value list(d.keys()) => listof keys in d list(d.values()) => listof values in d key in d => Bool d[new_key] = new_value # add new pairs to d d[key] = new_value # reassign a new value to key

16 d1 = {1: "review for CS 116", 2: "Sure", 3: "Why not?", 4: "Good luck on final"} d1[1] = "review for CS 116" d1.keys() = ["review for CS 116", "Sure", "Why not?", "Good luck on final"] ** Note: the order is not guaranteed ** 5 in d1 => False d1[5] = "holiday" d1 = {1: "review for CS 116", 2: "Sure", 3: "Why not?", 4: "Good luck on final", 5: "holiday"}

17 Complete the Python function common that consumes two dictionaries (d1 and d2, with common key and value types). Return a list of all the keys (in increasing order) that occur in both d1 and d2 and have the same associated values in each. Examples: common({1:'1', 2:'2', 4:'4'}, {3:'3', 2:'2', 1:'1', 4: 4 }) => [1,2] common({1:'1', 2:'2', 4:'4'}, {3:'3', 5:'2', 6:'1 }) => []

18 There are 3 magic methods that you have to define inside of Class in CS 116: init : Constructor that initializes the fields of a class when an object is created repr : Returns a printable representational string of the given object eq : Allows you to compare if two objects are equal (have equal fields values)

19 Use the form: self.field Examples: - Country.continent - Country.leader - Country.population

20 class Movie: ''' fields: title (Str), year (Nat), stars (listof Str) requires: year is the year the movie was released (> 1900) stars includes the names of the actors in the movie ' def init (self, name, date, actors): self.title = name self.year = date self.stars = actors def repr (self): return "{0}({1}) featuring {2}".format( self.title, self.year, self.stars) def eq (self, other): return isinstance(other, Movie) and \ self.title == other.title and \ self.year == other.year and \ self.stars == other.stars

21 Complete the class function add_star that consumes a Movie object and a string, star, and add the star's name to the end of the movie s stars list. In addition, the function returns the number of actors listed under stars. Examples: princess_bride = Movie("Princess Bride", 1987,["Cary Elwes", "Robin Wright", "Mandy Patinkin"]) princess_bride.add_star("andre the Giant") => 4 princess_bride = Movie("Princess Bride", 1987,["Cary Elwes", "Robin Wright", "Mandy Patinkin", "Andre the Giant"])

22 Write a function movies_by_year that consumes a list of Movie objects and returns a dictionary where the keys are the years the movies came out in and the associated values is a list of the movie titles ( if two movies came out in the same year then both their titles would be in the associated list for that key) Example: m_list = [Movie("Princess Bride", 1987,["Cary Elwes", "Robin Wright","Mandy Patinkin"]), Movie("Alien Nation", 1988, ["James Caan", "Mandy Patinkin"]), Movie("RoboCop", 1987, ["Nancy Allen", "Peter Weller"])] movies_by_year(m_list) => {1987: ['Princess Bride', 'RoboCop'], 1988: ['Alien Nation']}

23 f = open(filename, r ) è open the file for reading f = open(filename, w ) è open the file for writing f.readline() è return the next line f.readlines() è return the list of all the lines f.write(s) è append s to end of f f.writelines(los) è append los to end of f f.close() è close f to prevent losing data

24 Write a Python function num_words that consumes the name of a filename and returns the the number of words in the file Note: words are considered characters separated by a space and there are only letters in the file Examples: If "test1.txt" contains "I love Computer Science\n, then num_words("test1.txt") => 4 If "test2.txt" is an empty file, then num_words("test2.txt") => 0

25 Write a function write_reverse that reads in the contents from the input file, infile, and writes all of the lines in reverse to an outfile where outfile is a filename entered by the user and returns None Examples: If "test1.txt" contains "I love Computer Science\n, then write_reverse("test1.txt") would write the line "ecneics retupmoc evol I\n" to the file "output1.txt" where "output1" is the filename entered by the user. If "test2.txt" is an empty file then write_reverse("test2.txt") would write nothing to "output2.txt" where "output2" is the filename entered by the user

26 Terminologies: Vertex & Edge Neighbours & Degree Connected graph vs. Unconnected graph Make sure you are familiar with different representations of a graph: Vertex and Edge list representation Adjacency list representation Adjacency matrix representation (call 'A' vertex 0, 'B' vertex 1, etc.) ~Please review Tutorial 11~

27

Module 08: Searching and Sorting Algorithms

Module 08: Searching and Sorting Algorithms Module 08: Searching and Sorting Algorithms Topics: Searching algorithms Sorting algorithms 1 Application: Searching a list Suppose you have a list L. How could you determine if a particular value is in

More information

CS 116 Fall 2016 Review Notes Created By: Rina Dong

CS 116 Fall 2016 Review Notes Created By: Rina Dong Design Recipe: ü Purpose Explicitly indicate what the function does, including how the parameters are used. (Function name, parameters name, how the parameters are used) Example: fn_name(p1, p2,, pn) consumes.,

More information

Module 07: Efficiency

Module 07: Efficiency Module 07: Efficiency Topics: Basic introduction to run-time efficiency Analyzing recursive code Analyzing iterative code 1 Consider the following two ways to calculate the maximum of a nonempty list.

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science DECEMBER 2013 EXAMINATIONS CSC 108 H1F Instructors: Craig and Gries Duration 3 hours PLEASE HAND IN Examination Aids: None Student Number:

More information

Question 1. Part (a) Part (b) December 2013 Final Examination Marking Scheme CSC 108 H1F. [13 marks] [4 marks] Consider this program:

Question 1. Part (a) Part (b) December 2013 Final Examination Marking Scheme CSC 108 H1F. [13 marks] [4 marks] Consider this program: Question 1. Part (a) [4 marks] Consider this program: [13 marks] def square(x): (number) -> number Write what this program prints, one line per box. There are more boxes than you need; leave unused ones

More information

TUTORIAL 9 DICTIONARIES AND CLASSES

TUTORIAL 9 DICTIONARIES AND CLASSES TUTORIAL 9 DICTIONARIES AND CLASSES REMINDER Assignment 08 is due March 23 rd at 8 AM REVIEW Dictionary Classes init repr eq class methods DICTIONARY {key1:value1, key2:value2, } Each element has a key

More information

Sequence Types FEB

Sequence Types FEB Sequence Types FEB 23-25 2015 What we have not learned so far How to store, organize, and access large amounts of data? Examples: Read a sequence of million numbers and output these in sorted order. Read

More information

TUTORIAL 10 READING AND WRITING FILES

TUTORIAL 10 READING AND WRITING FILES TUTORIAL 10 READING AND WRITING FILES REMINDER No assignment due next week Assignment 09 due Monday December 3 rd at 10:00 AM REVIEW - FILES Find (same folder) Open read_file = open(filename, r ) write_file

More information

Module 04: Lists. Topics: Lists and their methods Mutating lists Abstract list functions Readings: ThinkP 8, 10. CS116 Fall : Lists

Module 04: Lists. Topics: Lists and their methods Mutating lists Abstract list functions Readings: ThinkP 8, 10. CS116 Fall : Lists Module 04: Lists Topics: Lists and their methods Mutating lists Abstract list functions Readings: ThinkP 8, 10 1 Consider the string method split >>> name = "Harry James Potter" >>> name.split() ['Harry',

More information

Python: Short Overview and Recap

Python: Short Overview and Recap Python: Short Overview and Recap Benjamin Roth CIS LMU Benjamin Roth (CIS LMU) Python: Short Overview and Recap 1 / 39 Data Types Object type Example creation Numbers (int, float) 123, 3.14 Strings this

More information

Do not turn this page until you have received the signal to start. In the meantime, please read the instructions below carefully.

Do not turn this page until you have received the signal to start. In the meantime, please read the instructions below carefully. UNIVERSITY OF TORONTO MISSISSAUGA DECEMBER 2014 FINAL EXAMINATION CSC108H5F Instructor: Zingaro, Petersen, Tong Duration: 3 hours Examination Aids: None Student Number: Family Name(s): Given Name(s): The

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2012 EXAMINATIONS CSC 108 H1S Instructors: Campbell Duration 3 hours PLEASE HAND IN Examination Aids: None Student Number: Family

More information

CSC148 Fall 2017 Ramp Up Session Reference

CSC148 Fall 2017 Ramp Up Session Reference Short Python function/method descriptions: builtins : input([prompt]) -> str Read a string from standard input. The trailing newline is stripped. The prompt string, if given, is printed without a trailing

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2010 EXAMINATIONS CSC 108 H1S Instructors: Horton Duration 3 hours PLEASE HAND IN Examination Aids: None Student Number: Family Name(s):

More information

UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2014 EXAMINATIONS. CSC 108 H1S Instructors: Campbell and Papadopoulou.

UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2014 EXAMINATIONS. CSC 108 H1S Instructors: Campbell and Papadopoulou. PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2014 EXAMINATIONS CSC 108 H1S Instructors: Campbell and Papadopoulou Duration 3 hours PLEASE HAND IN Examination Aids: None Student

More information

Algorithms and Programming

Algorithms and Programming Algorithms and Programming Lecture 9 Computational complexity, Search and sorting algorithms Camelia Chira Course content Programming in the large Programming in the small Introduction in the software

More information

Python review. 1 Python basics. References. CS 234 Naomi Nishimura

Python review. 1 Python basics. References. CS 234 Naomi Nishimura Python review CS 234 Naomi Nishimura The sections below indicate Python material, the degree to which it will be used in the course, and various resources you can use to review the material. You are not

More information

CS 115 Exam 3, Fall 2016, Sections 1-4

CS 115 Exam 3, Fall 2016, Sections 1-4 , Sections 1-4 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want to receive partial

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science DECEMBER 2009 EXAMINATIONS CSC 108 H1F Instructors: Gries, Horton, Zingaro Duration 3 hours PLEASE HAND IN Examination Aids: None Student

More information

CS 115 Exam 3, Fall 2016, Sections 5-8

CS 115 Exam 3, Fall 2016, Sections 5-8 , Sections 5-8 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want to receive partial

More information

Programming Training. Main Points: - More Fundamental algorithms on Arrays. - Reading / Writing from files - Problem Solving

Programming Training. Main Points: - More Fundamental algorithms on Arrays. - Reading / Writing from files - Problem Solving Programming Training Main Points: - More Fundamental algorithms on Arrays. - Reading / Writing from files - Problem Solving Functions in Python A Python program is a sequence of a functions which can be

More information

About the Final. Saturday, 7-10pm in Science Center 101. Closed book, closed notes. Not on the final: graphics, file I/O, vim, unix

About the Final. Saturday, 7-10pm in Science Center 101. Closed book, closed notes. Not on the final: graphics, file I/O, vim, unix CS 21 Final Review About the Final Saturday, 7-10pm in Science Center 101 Closed book, closed notes Not on the final: graphics, file I/O, vim, unix Expect Questions That Ask You To: Evaluate Python expressions

More information

22C:16 CS:1210 Exam 2

22C:16 CS:1210 Exam 2 22C:16 CS:1210 Exam 2 April 4th, 6:30 pm to 8:30 pm Instructions: This is an open notes exam and you have 2 hours to complete it. There are 4 problems in the exam and these appear on 6 pages. The exam

More information

Binary Search APRIL 25 TH, 2014

Binary Search APRIL 25 TH, 2014 Binary Search APRIL 25 TH, 2014 The Search Problem One of the most common computational problems (along with sorting) is searching. In its simplest form, the input to the search problem is a list L and

More information

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1 Lecture #15: Generic Functions and Expressivity Last modified: Wed Mar 1 15:51:48 2017 CS61A: Lecture #16 1 Consider the function find: Generic Programming def find(l, x, k): """Return the index in L of

More information

Module 09: Additional Options for Organizing Data

Module 09: Additional Options for Organizing Data Module 09: Additional Options for Organizing Data Topics: Dictionaries Classes Readings: ThinkP 11, 15, 16, 17 1 Collections of key-value pairs In CS115, you studied collections of key-value pairs, where

More information

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines. Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of

More information

UNIVERSITY OF TORONTO SCARBOROUGH. December 2017 EXAMINATIONS. CSCA20H3 Duration 3 hours. Examination Aids: Instructor: Bretscher

UNIVERSITY OF TORONTO SCARBOROUGH. December 2017 EXAMINATIONS. CSCA20H3 Duration 3 hours. Examination Aids: Instructor: Bretscher PLEASE HAND IN UNIVERSITY OF TORONTO SCARBOROUGH December 2017 EXAMINATIONS CSCA20H3 Duration 3 hours PLEASE HAND IN Examination Aids: None Student Number: Last (Family) Name(s): First (Given) Name(s):

More information

CS2304: Python for Java Programmers. CS2304: Sequences and Collections

CS2304: Python for Java Programmers. CS2304: Sequences and Collections CS2304: Sequences and Collections Sequences In Python A sequence type in python supports: The in membership operator. The len() function. Slicing like we saw with strings, s[1:3]. And is iterable (for

More information

CSC148 Week 2. Larry Zhang

CSC148 Week 2. Larry Zhang CSC148 Week 2 Larry Zhang 1 Admin Discussion board is up (link on the course website). 2 Outline for this week Abstract Data Type Stack Queue 3 Abstract Data Type (ADT) 4 What is an abstract data type

More information

CS 1110 Prelim 2 November 12th, 2015

CS 1110 Prelim 2 November 12th, 2015 CS 1110 Prelim 2 November 12th, 2015 This 90-minute exam has 6 questions worth a total of 100 points. Scan the whole test before starting. udget your time wisely. Use the back of the pages if you need

More information

Question 1. December 2009 Final Examination Marking Scheme CSC 108 H1F

Question 1. December 2009 Final Examination Marking Scheme CSC 108 H1F Question 1. [10 marks] Below are five segments of code. Each one runs without error. To the right of each segment, show the output it generates. L = [1, 2, 3, 4] for item in L: item = item * 5 print L

More information

CS 1110 Prelim 2 November 10th, 2016

CS 1110 Prelim 2 November 10th, 2016 CS 1110 Prelim 2 November 10th, 2016 This 90-minute exam has 5 questions worth a total of 100 points. Scan the whole test before starting. Budget your time wisely. Use the back of the pages if you need

More information

CS 115 Exam 3, Spring 2014

CS 115 Exam 3, Spring 2014 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want to receive partial credit for

More information

Sequences and iteration in Python

Sequences and iteration in Python GC3: Grid Computing Competence Center Sequences and iteration in Python GC3: Grid Computing Competence Center, University of Zurich Sep. 11 12, 2013 Sequences Python provides a few built-in sequence classes:

More information

CS111 Jeopardy: The Home Version

CS111 Jeopardy: The Home Version CS111 Jeopardy: The Home Version The game that turns CS111 into CSfun11! Fall 2018 This is intended to be a fun way to review some of the topics that will be on the CS111 final exam. These questions are

More information

UNIVERSITY OF TORONTO SCARBOROUGH. Wnter 2016 EXAMINATIONS. CSC A20H Duration 2 hours 45 mins. No Aids Allowed

UNIVERSITY OF TORONTO SCARBOROUGH. Wnter 2016 EXAMINATIONS. CSC A20H Duration 2 hours 45 mins. No Aids Allowed Student Number: Last Name: First Name: UNIVERSITY OF TORONTO SCARBOROUGH Wnter 2016 EXAMINATIONS CSC A20H Duration 2 hours 45 mins No Aids Allowed Do not turn this page until you have received the signal

More information

CS 115 Exam 3, Spring 2015, Sections 1-4

CS 115 Exam 3, Spring 2015, Sections 1-4 CS 115 Exam 3, Spring 2015, Sections 1-4 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work

More information

Short Python function/method descriptions:

Short Python function/method descriptions: Last Name First Name Student#. Short Python function/method descriptions: builtins : len(x) -> integer Return the length of the list, tuple, dict, or string x. max(l) -> value Return the largest value

More information

CS 115 Exam 3, Fall 2015, Sections 1-4

CS 115 Exam 3, Fall 2015, Sections 1-4 , Sections 1-4 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want to receive partial

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL/MAY 2009 EXAMINATIONS CSC 108H1S Instructor: Horton Duration 3 hours PLEASE HAND IN Examination Aids: None Student Number: Last (Family)

More information

CS 2316 Exam 1 Spring 2014

CS 2316 Exam 1 Spring 2014 CS 2316 Exam 1 Spring 2014 Name : Grading TA: Integrity: By taking this exam, you pledge that this is your work and you have neither given nor received inappropriate help during the taking of this exam

More information

Module 06. Topics: Iterative structure in Python Readings: ThinkP 7. CS116 Spring : Iteration

Module 06. Topics: Iterative structure in Python Readings: ThinkP 7. CS116 Spring : Iteration Module 06 Topics: Iterative structure in Python Readings: ThinkP 7 1 In Python, repetition can be recursive def count_down_rec(x): ''' Produces the list [x, x-1, x-2,..., 1,0] count_down:nat->(listof Nat)'''

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science SUMMER 2012 EXAMINATIONS CSC 108 H1Y Instructors: Janicki Duration NA PLEASE HAND IN Examination Aids: None Student Number: Family Name(s):

More information

Lists and Loops. browse Python docs and interactive help

Lists and Loops. browse Python docs and interactive help Lists and Loops 1 Help in Python browse Python docs and interactive help 2 Lists in Python defining lists lists as queues and stacks inserting and removing membership and ordering lists 3 Loops in Python

More information

CS Prelim 1 Review Fall 2017

CS Prelim 1 Review Fall 2017 CS 1110 Prelim 1 Review Fall 2017 Exam Info Prelim 1: 7:30 9:00PM, Thursday, October 12th Last name A J in Uris G01 Last name K Z in Statler Auditorium SDS Students will get an e-mail To help you study:

More information

Lab 6 Sorting. Sup Biotech 3 Python. Pierre Parutto

Lab 6 Sorting. Sup Biotech 3 Python. Pierre Parutto Lab 6 Sorting Sup Biotech 3 Python Pierre Parutto November 23, 2016 Preamble Document Property Authors Pierre Parutto Version 1.0 Number of pages 11 Contact Contact the assistant team at: supbiotech-bioinfo-bt3@googlegroups.com

More information

Midterm 1 Review. Important control structures. Important things to review. Functions Loops Conditionals

Midterm 1 Review. Important control structures. Important things to review. Functions Loops Conditionals Midterm 1 Review Important control structures Functions Loops Conditionals Important things to review Binary numbers Boolean operators (and, or, not) String operations: len, ord, +, *, slice, index List

More information

CS 1110 Prelim 2 April 26th, 2016

CS 1110 Prelim 2 April 26th, 2016 Circle your lab/situation: CS 1110 Prelim 2 April 26th, 2016 ACCEL: Tue 12:20 Tue 1:25 Tue 2:30 Tue 3:35 ACCEL : Wed 10:10 Wed 11:15 Wed 12:20 Wed 1:25 Wed 2:30 Wed 3:35 PHILLIPS : Tue 12:20 Tue 1:25 Wed

More information

Iterators & Generators

Iterators & Generators Iterators & Generators Sequences A sequence is something that you can: Index into Get the length of What are some examples of sequences? Sequences We ve been working with sequences all semester! Examples:

More information

CS 1301 Exam 2 Fall 2010

CS 1301 Exam 2 Fall 2010 CS 1301 Exam 2 Fall 2010 Name : Grading TA: Devices: If your cell phone, pager, PDA, beeper, ipod, or similar item goes off during the exam, you will lose 10 points on this exam. Turn all such devices

More information

CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees. CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees 1

CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees. CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees 1 CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees CS 135 Winter 2018 Tutorial 7: Accumulative Recursion and Binary Trees 1 Goals of this tutorial You should be able to... understand

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2016 EXAMINATIONS CSC 108 H1S Instructor(s): Smith and Fairgrieve Duration 3 hours PLEASE HAND IN No Aids Allowed You must earn at

More information

Abstract Data Types Chapter 1

Abstract Data Types Chapter 1 Abstract Data Types Chapter 1 Part Two Bags A bag is a basic container like a shopping bag that can be used to store collections. There are several variations: simple bag grab bag counting bag 2 Bag ADT

More information

CSC148: Week 1

CSC148: Week 1 CSC148: Week 1 http://www.cdf.utoronto.ca/~csc148h/summer/ Sophia Huynh Summer 2018 1 Outline Introduction Object-Oriented Design 2 Your instructor Sophia Huynh Master's Student Undergrad was done at UofT

More information

CS Prelim 1 Review Fall 2018

CS Prelim 1 Review Fall 2018 CS 1110 Prelim 1 Review Fall 2018 Exam Info Prelim 1: Thursday, October 12th Last name A D at 5:15 6:45 in Uris G01 Last name E K at 5:15 6:45 in Statler Aud. Last name L P at 7:30 9:00 in Uris G01 Last

More information

CS116 - Module 5 - Accumulative Recursion

CS116 - Module 5 - Accumulative Recursion CS116 - Module 5 - Accumulative Recursion Cameron Morland Winter 2018 1 Cameron Morland CS116 - Module 5 - Accumulative Recursion Types of Recursion Structural Recursion Generative Recursion Accumulative

More information

Lecture #16: Generic Functions and Expressivity. Last modified: Fri Feb 26 19:16: CS61A: Lecture #16 1

Lecture #16: Generic Functions and Expressivity. Last modified: Fri Feb 26 19:16: CS61A: Lecture #16 1 Lecture #16: Generic Functions and Expressivity Last modified: Fri Feb 26 19:16:38 2016 CS61A: Lecture #16 1 Consider the function find: Generic Programming def find(l, x, k): """Return the index in L

More information

CS 1110 Prelim 2 November 13th, 2014

CS 1110 Prelim 2 November 13th, 2014 CS 1110 Prelim 2 November 13th, 2014 This 90-minute exam has 5 questions worth a total of 100 points. Scan the whole test before starting. Budget your time wisely. Use the back of the pages if you need

More information

Lab 6 Sorting. Sup Biotech 3 Python. Pierre Parutto

Lab 6 Sorting. Sup Biotech 3 Python. Pierre Parutto Lab 6 Sorting Sup Biotech 3 Python Pierre Parutto October 31, 2016 Preamble Document Property Authors Pierre Parutto Version 1.0 Number of pages 7 Contact Contact the assistant team at: supbiotech-bioinfo-bt3@googlegroups.com

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science AUGUST EXAMINATIONS CSC 108H1Y Instructor: Daniel Zingaro Duration three hours PLEASE HAND IN Examination Aids: None. Student Number: Last

More information

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs CS 61A Summer 2014 Structure and Interpretation of Computer Programs Final Solutions INSTRUCTIONS ˆ You have 3 hours to complete the exam. ˆ The exam is closed book, closed notes, and closed electronics,

More information

UNIVERSITY OF TORONTO Faculty of Arts and Science DECEMBER 2017 EXAMINATIONS. CSC 108 H1F Instructor(s): Campbell, Fairgrieve, and Smith

UNIVERSITY OF TORONTO Faculty of Arts and Science DECEMBER 2017 EXAMINATIONS. CSC 108 H1F Instructor(s): Campbell, Fairgrieve, and Smith PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science DECEMBER 2017 EXAMINATIONS CSC 108 H1F Instructor(s): Campbell, Fairgrieve, and Smith Duration 3 hours PLEASE HAND IN No Aids Allowed You

More information

MEIN 50010: Python Data Structures

MEIN 50010: Python Data Structures : Python Data Structures Fabian Sievers Higgins Lab, Conway Institute University College Dublin Wednesday, 2017-10-18 Data Structures Stacks, Queues & Deques Structures Data structures are a way of storing

More information

PREPARING FOR THE FINAL EXAM

PREPARING FOR THE FINAL EXAM PREPARING FOR THE FINAL EXAM CS 1110: FALL 2017 This handout explains what you have to know for the final exam. Most of the exam will include topics from the previous two prelims. We have uploaded the

More information

Programming Training. Arrays / Lists Traversal. Input a List. Main Points: - Working with strings. - Working with Files - Problem Solving.

Programming Training. Arrays / Lists Traversal. Input a List. Main Points: - Working with strings. - Working with Files - Problem Solving. Programming Training Main Points: - Working with strings. - Working with Files - Problem Solving. Arrays / Lists Traversal ANY COMPUTATION WITH LIST MUST USE THE LOOP FOR. Ways to traverse the list 1)

More information

CS 1110 Prelim 1 October 15th, 2015

CS 1110 Prelim 1 October 15th, 2015 CS 1110 Prelim 1 October 15th, 2015 This 90-minute exam has 6 uestions worth a total of 100 points. Scan the whole test before starting. Budget your time wisely. Use the back of the pages if you need more

More information

15110 Principles of Computing, Carnegie Mellon University - CORTINA. Binary Search. Required: List L of n unique elements.

15110 Principles of Computing, Carnegie Mellon University - CORTINA. Binary Search. Required: List L of n unique elements. UNIT 5B Binary Search 1 Binary Search Required: List L of n unique elements. The elements must be sorted in increasing order. Result: The index of a specific element (called the key) or None if the key

More information

A Little Python Part 2

A Little Python Part 2 A Little Python Part 2 Introducing Programming with Python Data Structures, Program Control Outline Python and the System Data Structures Lists, Dictionaries Control Flow if, for, while Reminder - Learning

More information

CS 234 Python Review Part 2

CS 234 Python Review Part 2 CS 234 Python Review Part 2 Recap import function: define, return boolean, conditional, branching loop: for, range, while file: open, close, readlines string: split Classes Define blueprint for a custom

More information

CSC326 Python Sequences i. CSC326 Python Sequences

CSC326 Python Sequences i. CSC326 Python Sequences i CSC326 Python Sequences ii REVISION HISTORY NUMBER DATE DESCRIPTION NAME 1.0 2011-09 JZ iii Contents 1 Agenda 1 2 while Statement 1 3 Sequence Overview 2 4 String 2 5 Lists 4 6 Dictionary 5 7 Tuples

More information

CS Prelim 1 Review Fall 2013

CS Prelim 1 Review Fall 2013 CS 1110 Prelim 1 Review Fall 2013 Exam Info Prelim 1: 7:30 9:00PM, Thursday, October 17th Last name A G in Olin 155 Last name H K in Olin 165 Last name L R in Olin 255 Last name S Z in Upson B17 To help

More information

Short Python function/method descriptions:

Short Python function/method descriptions: Last Name First Name Student#. Short Python function/method descriptions: builtins : len(x) -> integer Return the length of the list, tuple, dict, or string x. max(l) -> value Return the largest value

More information

COMPUTER SCIENCE IN THE NEWS (TWO YEARS AGO) CS61A Lecture 16 Mutable Data Structures TODAY REVIEW: OOP CLASS DESIGN 7/24/2012

COMPUTER SCIENCE IN THE NEWS (TWO YEARS AGO) CS61A Lecture 16 Mutable Data Structures TODAY REVIEW: OOP CLASS DESIGN 7/24/2012 COMPUTER SCIENCE IN THE NEWS (TWO YEARS AGO) CS61A Lecture 16 Mutable Data Structures Jom Magrotker UC Berkeley EECS July 16, 2012 http://articles.nydailynews.com/2010 04 27/news/27062899_1_marks death

More information

CS-141 Exam 2 Review November 10, 2017 Presented by the RIT Computer Science Community

CS-141 Exam 2 Review November 10, 2017 Presented by the RIT Computer Science Community CS-141 Exam 2 Review November 10, 2017 Presented by the RIT Computer Science Community http://csc.cs.rit.edu Linked Lists 1. You are given the linked sequence: 1 2 3. You may assume that each node has

More information

UNIVERSITY OF TORONTO SCARBOROUGH. Fall 2015 EXAMINATIONS. CSC A20H Duration 3 hours. No Aids Allowed

UNIVERSITY OF TORONTO SCARBOROUGH. Fall 2015 EXAMINATIONS. CSC A20H Duration 3 hours. No Aids Allowed Student Number: Last Name: First Name: UNIVERSITY OF TORONTO SCARBOROUGH Fall 2015 EXAMINATIONS CSC A20H Duration 3 hours No Aids Allowed Do not turn this page until you have received the signal to start.

More information

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs CS 6A Fall 25 Structure and Interpretation of Computer Programs Midterm 2 Solutions INSTRUCTIONS You have 2 hours to complete the exam. The exam is closed book, closed notes, closed computer, closed calculator,

More information

CS116 - Module 10 - File Input/Output

CS116 - Module 10 - File Input/Output CS116 - Module 10 - File Input/Output Cameron Morland Winter 2018 Reminder: if you have not already, ensure you: Read Think Python, chapters 8, 12, 14. 1 Cameron Morland CS116 - Module 10 - File Input/Output

More information

Compsci 101 Fall 2015 Exam 1 Rubric. Problem 1 (24 points)

Compsci 101 Fall 2015 Exam 1 Rubric. Problem 1 (24 points) Compsci 101 Fall 2015 Exam 1 Rubric Problem 1 (24 points) Each answer is one point each. Spelling of int, integer doesn't matter. Similarly string, str doesn't matter. For the value column all answers

More information

Your Name: Your TA's Name: 1 / 10 CS 1301 CS1 with Robots Fall 2008 Exam 3

Your Name: Your TA's Name: 1 / 10 CS 1301 CS1 with Robots Fall 2008 Exam 3 1 / 10 CS 1301 CS1 with Robots Fall 2008 Exam 3 This test has ten (10) problems on Nine (9) pages. Some problems have multiple parts. Problem Score Possible Points 1. Vocabulary 15 2. Fill in the Blank

More information

CS 1110 Prelim 2 November 6th, 2012

CS 1110 Prelim 2 November 6th, 2012 CS 1110 Prelim 2 November 6th, 2012 This 90-minute exam has 6 questions worth a total of 100 points. Scan the whole test before starting. Budget your time wisely. Use the back of the pages if you need

More information

CS Prelim 1 Review Fall 2016

CS Prelim 1 Review Fall 2016 CS 1110 Prelim 1 Review Fall 2016 Exam Info Prelim 1: 7:30 9:00PM, Thursday, October 13th Last name A J in Uris G01 Last name K Z in Statler Auditorium SDS Students will get an e-mail To help you study:

More information

>>> print( X ) [0,1,2,3] def mystery(l):??

>>> print( X ) [0,1,2,3] def mystery(l):?? REVIEW EXERCISES Problem 4 What is the output of the following script? Disclaimer. I cannot guarantee that the exercises of the final exam are going to look like this. Also, for the most part, the exercises

More information

CS 1110 Prelim 1 October 17th, 2013

CS 1110 Prelim 1 October 17th, 2013 CS 1110 Prelim 1 October 17th, 2013 This 90-minute exam has 6 questions worth a total of 100 points. Scan the whole test before starting. Budget your time wisely. Use the back of the pages if you need

More information

\n is used in a string to indicate the newline character. An expression produces data. The simplest expression

\n is used in a string to indicate the newline character. An expression produces data. The simplest expression Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of

More information

Decorate, sort, undecorate pattern

Decorate, sort, undecorate pattern Decorate, sort, undecorate pattern In a previous example, we read a file that contained data about Words with Friends games between me and my sister. Suppose we want to read this data again, and this time

More information

Module 3: Strings and Input/Output

Module 3: Strings and Input/Output Module 3: Strings and Input/Output Topics: Strings and their methods Printing to standard output Reading from standard input Readings: ThinkP 8, 10 1 Strings in Python: combining strings in interesting

More information

A Little Python Part 3

A Little Python Part 3 A Little Python Part 3 Introducing Programming with Python I/O, Files, Object Classes, Exception Handling Outline I/O Files opening File I/O, reading writing Python Objects Defining a new object Inheritance

More information

Exam 3. 1 True or False. CSCE 110. Introduction to Programming Exam 3

Exam 3. 1 True or False. CSCE 110. Introduction to Programming Exam 3 CSCE 110. Introduction to Programming Exam 3 Exam 3 Professor:Joseph Hurley Exam Version B 1 True or False Fill in the bubble for "A" if the answer is True. Fill in the bubble for "B" if the answer is

More information

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs CS 61A Fall 2013 Structure and Interpretation of Computer Programs Final Solutions INSTRUCTIONS You have 3 hours to complete the exam. The exam is closed book, closed notes, closed computer, closed calculator,

More information

Announcements. Project 5 is on the street. Second part is essay questions for CoS teaming requirements.

Announcements. Project 5 is on the street. Second part is essay questions for CoS teaming requirements. Announcements Project 5 is on the street. Second part is essay questions for CoS teaming requirements. The first part you do as a team The CoS essay gets individually answered and has separate submission

More information

CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science

CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science Entrance Examination, 5 May 23 This question paper has 4 printed sides. Part A has questions of 3 marks each. Part B has 7 questions

More information

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science

PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science PLEASE HAND IN UNIVERSITY OF TORONTO Faculty of Arts and Science APRIL 2015 EXAMINATIONS CSC 108 H1S Instructor: Fairgrieve and Hagerman Duration 3 hours PLEASE HAND IN Examination Aids: None You must

More information

Graphs. Directed graphs. Readings: Section 28

Graphs. Directed graphs. Readings: Section 28 Graphs Readings: Section 28 CS 135 Winter 2018 12: Graphs 1 Directed graphs A directed graph consists of a collection of vertices (also called nodes) together with a collection of edges. An edge is an

More information

CS 11 Project #6 Due THURSDAY, December 7 th, 11:59pm. Classes and Exceptions Background: Classes allow us to define new types for Python. We can first think of a class as defining a new container instead

More information

CITS3001. Algorithms, Agents and Artificial Intelligence. Semester 2, 2016

CITS3001. Algorithms, Agents and Artificial Intelligence. Semester 2, 2016 CITS3001 Algorithms, Agents and Artificial Intelligence Semester 2, 2016 Tim French School of Computer Science & Software Eng. The University of Western Australia 2. Review of algorithmic concepts CLRS,

More information

Lecture 7. Scientific Computation

Lecture 7. Scientific Computation Lecture 7 Scientific Computation for-loops: Beyond Sequences Work on iterable objects Object with an ordered collection of data This includes sequences But also much more Examples: Text Files (built-in)

More information

Divide and Conquer. playing divide and conquer. searching in a sorted list membership in a sorted list

Divide and Conquer. playing divide and conquer. searching in a sorted list membership in a sorted list Divide and Conquer 1 Guessing a Secret playing divide and conquer 2 Binary Search searching in a sorted list membership in a sorted list 3 Bisection Search inverting a sampled function bisection search

More information

Lecture 7: Python s Built-in. in Types and Basic Statements

Lecture 7: Python s Built-in. in Types and Basic Statements The University of North Carolina at Chapel Hill Spring 2002 Lecture 7: Python s Built-in in Types and Basic Statements Jan 25 1 Built-in in Data Structures: Lists A list is an ordered collection of objects

More information

COMP519 Web Programming Lecture 21: Python (Part 5) Handouts

COMP519 Web Programming Lecture 21: Python (Part 5) Handouts COMP519 Web Programming Lecture 21: Python (Part 5) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool Functions

More information