CS 373: Combinatorial Algorithms, Spring 2001 Homework 0, due January 23, 2001 at the beginning of class

Size: px
Start display at page:

Download "CS 373: Combinatorial Algorithms, Spring 2001 Homework 0, due January 23, 2001 at the beginning of class"

Transcription

1 CS 373: Combinatorial Algorithms, Spring 200 Homework 0, due January 23, 200 at the beginning of class Name: Net ID: Alias: Neatly print your name (first name first, with no comma), your network ID, and a short alias into the boxes above. Do not sign your name. Do not write your Social Security number. Staple this sheet of paper to the top of your homework. Grades will be listed on the course web site by alias give us, so your alias should not resemble your name or your Net ID. If you don t give yourself an alias, we ll give you one that you won t like. This homework tests your familiarity with the prerequisite material from CS 73, CS 225, and CS 273 many of these problems have appeared on homeworks or exams in those classes primarily to help you identify gaps in your knowledge. You are responsible for filling those gaps on your own. Parberry and Chapters 6 of CLR should be sufficient review, but you may want to consult other texts as well. Before you do anything else, read the Homework Instructions and FAQ on the CS 373 course web page ( cs373/hw/faq.html), and then check the box below. This web page gives instructions on how to write and submit homeworks staple your solutions together in order, write your name and netid on every page, don t turn in source code, analyze everything, use good English and good logic, and so forth. I have read the CS 373 Homework Instructions and FAQ. Required Problems. (a) Prove that any positive integer can be written as the sum of distinct powers of 2. For example: 42 = , 25 = , 7 = [Hint: Write the number in binary is not a proof; it just restates the problem.] (b) Prove that any positive integer can be written as the sum of distinct nonconsecutive Fibonacci numbers if F n appears in the sum, then neither F n+ nor F n will. For example: 42 = F 9 + F 6, 25 = F 8 + F 4 + F 2, 7 = F 7 + F 4 + F 2. (c) Prove that any integer (positive, negative, or zero) can be written in the form i ±3i, where the exponents i are distinct non-negative integers. For example: 42 = , 25 = , 7 =

2 2. Sort the following 20 functions from asymptotically smallest to asymptotically largest, indicating ties if there are any. You do not need to turn in proofs (in fact, please don t turn in proofs), but you should do them anyway just for practice. n n 2 lg n lg n 2 2lg lg n+ lg 2 n 2 lg n lg(n!) lg n! n lg n (lg n) n (lg n) lg n n /lg n nlg lg n log 000 n lg 000 n lg (000) ( ) n + n 000 n /000 To simplify notation, write f(n) g(n) to mean f(n) = o(g(n)) and f(n) g(n) to mean f(n) = Θ(g(n)). For example, the functions n 2, n, ( n 2), n 3 could be sorted either as n n 2 ( n) 2 n 3 or as n ( n 2) n 2 n Solve the following recurrences. State tight asymptotic bounds for each function in the form Θ(f(n)) for some recognizable function f(n). You do not need to turn in proofs (in fact, please don t turn in proofs), but you should do them anyway just for practice. Assume reasonable but nontrivial base cases if none are supplied. Extra credit will be given for more exact solutions. (a) A(n) = 5A(n/3) + n log n ( ) (b) B(n) = min B(k) + B(n k) +. 0<k<n (c) C(n) = 4C( n/2 + 5) + n 2 (d) D(n) = D(n ) + /n (e) E(n) = n + 2 n E( n) 4. This problem asks you to simplify some recursively defined boolean formulas as much as possible. In each case, prove that your answer is correct. Each proof can be just a few sentences long, but it must be a proof. (a) Suppose α 0 = p, α = q, and α n = (α n 2 α n ) for all n 2. Simplify α n as much as possible. [Hint: What is α 5?] (b) Suppose β 0 = p, β = q, and β n = (β n 2 β n ) for all n 2. Simplify β n as much as possible. [Hint: What is β 5?] (c) Suppose γ 0 = p, γ = q, and γ n = (γ n 2 γ n ) for all n 2. Simplify γ n as much as possible. [Hint: What is γ 5?] (d) Suppose δ 0 = p, δ = q, and δ n = (δ n 2 δ n ) for all n 2, where is some boolean function with two arguments. Find a boolean function such that δ n = δ m if and only if n m is a multiple of 4. [Hint: There is only one such function.] 2

3 5. Every year, upon their arrival at Hogwarts School of Witchcraft and Wizardry, new students are sorted into one of four houses (Gryffindor, Hufflepuff, Ravenclaw, or Slytherin) by the Hogwarts Sorting Hat. The student puts the Hat on their head, and the Hat tells the student which house they will join. This year, a failed experiment by Fred and George Weasley filled almost all of Hogwarts with sticky brown goo, mere moments before the annual Sorting. As a result, the Sorting had to take place in the basement hallways, where there was so little room to move that the students had to stand in a long line. After everyone learned what house they were in, the students tried to group together by house, but there was too little room in the hallway for more than one student to move at a time. Fortunately, the Sorting Hat took CS 373 many years ago, so it knew how to group the students as quickly as possible. What method did the Sorting Hat use? More formally, you are given an array of n items, where each item has one of four possible values, possibly with a pointer to some additional data. Describe an algorithm that rearranges the items into four clusters in O(n) time using only O() extra space. G H R R G G R G H H R S R R H G S H G G Harry Ann Bob Tina Chad Bill Lisa Ekta Bart Jim John Jeff Liz Mary Dawn Nick Kim Fox Dana Mel G G G G G G G H H H H H R R R R R R S S Harry Ekta Bill Chad Nick Mel Dana Fox Ann Jim Dawn Bart Lisa Tina John Bob Liz Mary Kim Jeff 6. [This problem is required only for graduate students taking CS 373 for a full unit; anyone else can submit a solution for extra credit.] Penn and Teller have a special deck of fifty-two cards, with no face cards and nothing but clubs the ace, 2, 3, 4, 5, 6, 7, 8, 9, 0,, 2,..., 52 of clubs. (They re big cards.) Penn shuffles the deck until each each of the 52! possible orderings of the cards is equally likely. He then takes cards one at a time from the top of the deck and gives them to Teller, stopping as soon as he gives Teller the three of clubs. (a) On average, how many cards does Penn give Teller? (b) On average, what is the smallest-numbered card that Penn gives Teller? (c) On average, what is the largest-numbered card that Penn gives Teller? [Hint: Solve for an n-card deck and then set n = 52.] In each case, give exact answers and prove that they are correct. If you have to appeal to intuition or common sense, your answers are probably wrong! Since you ve read the Homework Instructions, you know what the phrase describe an algorithm means. Right? 3

4 Practice Problems The remaining problems are entirely for your benefit; similar questions will appear in every homework. Don t turn in solutions we ll just throw them out but feel free to ask us about practice questions during office hours and review sessions. Think of them as potential exam questions (hint, hint). We ll post solutions to some of the practice problems after the homeworks are due.. Recall the standard recursive definition of the Fibonacci numbers: F 0 = 0, F =, and F n = F n + F n 2 for all n 2. Prove the following identities for all positive integers n and m. (a) F n is even if and only if n is divisible by 3. (b) F i = F n+2 i=0 (c) F 2 n F n+f n = ( ) n+ (d) If n is an integer multiple of m, then F n is an integer multiple of F m. 2. (a) Prove the following identity by induction: ( ) 2n = n k=0 ( )( ) n n. k n k (b) Give a non-inductive combinatorial proof of the same identity, by showing that the two sides of the equation count exactly the same thing in two different ways. There is a correct one-sentence proof. 3. A tournament is a directed graph with exactly one edge between every pair of vertices. (Think of the nodes as players in a round-robin tournament, where each edge points from the winner to the loser.) A Hamiltonian path is a sequence of directed edges, joined end to end, that visits every vertex exactly once. Prove that every tournament contains at least one Hamiltonian path A six-vertex tournament containing the Hamiltonian path

5 4. Solve the following recurrences. State tight asymptotic bounds for each function in the form Θ(f(n)) for some recognizable function f(n). You do not need to turn in proofs (in fact, please don t turn in proofs), but you should do them anyway just for practice. Assume reasonable but nontrivial base cases if none are supplied. Extra credit will be given for more exact solutions. (a) A(n) = A(n/2) + n (b) B(n) = 2B(n/2) + n (c) C(n) = n + ( ) 2 C(n ) + C(3n/4) ( ) (d) D(n) = D(k) + D(n k) + n max n/3<k<2n/3 (e) E(n) = 2E(n/2) + n/lg n (f) F(n) = F(n ), where F() = and F(2) = 2. F(n 2) (g) G(n) = G(n/2) + G(n/4) + G(n/6) + G(n/2) + n [Hint: =.] (h) H(n) = n + n H( n) (i) I(n) = (n )(I(n ) + I(n 2)), where F(0) = F() = (j) J(n) = 8J(n ) 5J(n 2) + 5. (a) Prove that 2 lg n + lg n = Θ(n 2 ). (b) Prove or disprove: 2 lg n = Θ ( 2 lg n ). (c) Prove or disprove: 2 2 lg lg n = Θ ( ) 2 2 lg lg n. (d) Prove or disprove: If f(n) = O(g(n)), then log(f(n)) = O(log(g(n))). (e) Prove or disprove: If f(n) = O(g(n)), then 2 f(n) = O(2 g(n) ). (f) Prove that log k n = o(n /k ) for any positive integer k. 6. Evaluate the following summations; simplify your answers as much as possible. Significant partial credit will be given for answers in the form Θ(f(n)) for some recognizable function f(n). (a) (b) (c) i= j= k=j i= j= k=j i= j= k=j i j k 5

6 7. Suppose you have a pointer to the head of singly linked list. Normally, each node in the list only has a pointer to the next element, and the last node s pointer is Null. Unfortunately, your list might have been corrupted by a bug in somebody else s code 2, so that the last node has a pointer back to some other node in the list instead. Top: A standard linked list. Bottom: A corrupted linked list. Describe an algorithm that determines whether the linked list is corrupted or not. Your algorithm must not modify the list. For full credit, your algorithm should run in O(n) time, where n is the number of nodes in the list, and use O() extra space (not counting the list itself). 8. An ant is walking along a rubber band, starting at the left end. Once every second, the ant walks one inch to the right, and then you make the rubber band one inch longer by pulling on the right end. The rubber band stretches uniformly, so stretching the rubber band also pulls the ant to the right. The initial length of the rubber band is n inches, so after t seconds, the rubber band is n + t inches long. t=0 t= t=2 Every second, the ant walks an inch, and then the rubber band is stretched an inch longer. (a) How far has the ant moved after t seconds, as a function of n and t? Set up a recurrence and (for full credit) give an exact closed-form solution. [Hint: What fraction of the rubber band s length has the ant walked?] (b) How long does it take the ant to get to the right end of the rubber band? For full credit, give an answer of the form f(n) + Θ() for some explicit function f(n). 9. (a) A domino is a 2 or 2 rectangle. How many different ways are there to completely fill a 2 n rectangle with n dominos? Set up a recurrence relation and give an exact closed-form solution. 2 After all, your code is always completely 00% bug-free. Isn t that right, Mr. Gates? 6

7 (b) A slab is a three-dimensional box with dimensions 2 2, 2 2, or 2 2. How many different ways are there to fill a 2 2 n box with n slabs? Set up a recurrence relation and give an exact closed-form solution. A 2 0 rectangle filled with ten dominos, and a box filled with ten slabs. 0. Professor George O Jungle has a favorite 26-node binary tree, whose nodes are labeled by letters of the alphabet. The preorder and postorder sequences of nodes are as follows: preorder: M N H C R S K W T G D X I Y A J P O E Z V B U L Q F postorder: C W T K S G R H D N A O E P J Y Z I B Q L F U V X M Draw Professor O Jungle s binary tree, and give the inorder sequence of nodes.. Alice and Bob each have a fair n-sided die. Alice rolls her die once. Bob then repeatedly throws his die until he rolls a number at least as big as the number Alice rolled. Each time Bob rolls, he pays Alice $. (For example, if Alice rolls a 5, and Bob rolls a 4, then a 3, then a, then a 5, the game ends and Alice gets $4. If Alice rolls a, then no matter what Bob rolls, the game will end immediately, and Alice will get $.) Exactly how much money does Alice expect to win at this game? Prove that your answer is correct. If you have to appeal to intuition or common sense, your answer is probably wrong! 2. Prove that for any nonnegative parameters a and b, the following algorithms terminate and produce identical output. SlowEuclid(a, b) : if b > a return SlowEuclid(b, a) else if b = 0 return a else return SlowEuclid(b, a b) FastEuclid(a, b) : if b = 0 return a else return FastEuclid(b, a mod b) 7

Solving recurrences. Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms.

Solving recurrences. Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms. Solving recurrences Frequently showing up when analysing divide&conquer algorithms or, more generally, recursive algorithms Example: Merge-Sort(A, p, r) 1: if p < r then 2: q (p + r)/2 3: Merge-Sort(A,

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Asymptotic Analysis, recurrences Date: 9/7/17

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Asymptotic Analysis, recurrences Date: 9/7/17 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Asymptotic Analysis, recurrences Date: 9/7/17 2.1 Notes Homework 1 will be released today, and is due a week from today by the beginning

More information

Written Homework #1: Analysis of Algorithms

Written Homework #1: Analysis of Algorithms Written Homework #1: Analysis of Algorithms CIS 121 Fall 2016 cis121-16fa-staff@googlegroups.com Due: Thursday, September 15th, 2015 before 10:30am (You must submit your homework online via Canvas. A paper

More information

ECS 20: Discrete Mathematics for Computer Science UC Davis Phillip Rogaway June 12, Final Exam

ECS 20: Discrete Mathematics for Computer Science UC Davis Phillip Rogaway June 12, Final Exam ECS 20: Discrete Mathematics for Computer Science Handout F UC Davis Phillip Rogaway June 12, 2000 Final Exam Instructions: Read the questions carefully; maybe I m not asking what you assume me to be asking!

More information

Homework 1 Submission

Homework 1 Submission Homework Submission Sample Solution; Due Date: Thursday, May 4, :59 pm Directions: Your solutions should be typed and submitted as a single pdf on Gradescope by the due date. L A TEX is preferred but not

More information

Algorithms and Data Structures 2016 Week 5 solutions (Tues 9th - Fri 12th February)

Algorithms and Data Structures 2016 Week 5 solutions (Tues 9th - Fri 12th February) Algorithms and Data Structures 016 Week 5 solutions (Tues 9th - Fri 1th February) 1. Draw the decision tree (under the assumption of all-distinct inputs) Quicksort for n = 3. answer: (of course you should

More information

Quiz 1 Solutions. Problem 2. Asymptotics & Recurrences [20 points] (3 parts)

Quiz 1 Solutions. Problem 2. Asymptotics & Recurrences [20 points] (3 parts) Introduction to Algorithms October 13, 2010 Massachusetts Institute of Technology 6.006 Fall 2010 Professors Konstantinos Daskalakis and Patrick Jaillet Quiz 1 Solutions Quiz 1 Solutions Problem 1. We

More information

Midterm Exam. CS 3110: Design and Analysis of Algorithms. June 20, Group 1 Group 2 Group 3

Midterm Exam. CS 3110: Design and Analysis of Algorithms. June 20, Group 1 Group 2 Group 3 Banner ID: Name: Midterm Exam CS 3110: Design and Analysis of Algorithms June 20, 2006 Group 1 Group 2 Group 3 Question 1.1 Question 2.1 Question 3.1 Question 1.2 Question 2.2 Question 3.2 Question 3.3

More information

CS473 - Algorithms I

CS473 - Algorithms I CS473 - Algorithms I Lecture 2 Asymptotic Notation 1 O-notation: Asymptotic upper bound f(n) = O(g(n)) if positive constants c, n 0 such that 0 f(n) cg(n), n n 0 f(n) = O(g(n)) cg(n) f(n) Asymptotic running

More information

Preparing for the CS 173 (A) Fall 2018 Midterm 1

Preparing for the CS 173 (A) Fall 2018 Midterm 1 Preparing for the CS 173 (A) Fall 2018 Midterm 1 1 Basic information Midterm 1 is scheduled from 7:15-8:30 PM. We recommend you arrive early so that you can start exactly at 7:15. Exams will be collected

More information

When we use asymptotic notation within an expression, the asymptotic notation is shorthand for an unspecified function satisfying the relation:

When we use asymptotic notation within an expression, the asymptotic notation is shorthand for an unspecified function satisfying the relation: CS 124 Section #1 Big-Oh, the Master Theorem, and MergeSort 1/29/2018 1 Big-Oh Notation 1.1 Definition Big-Oh notation is a way to describe the rate of growth of functions. In CS, we use it to describe

More information

Day 1: Over + Over Again

Day 1: Over + Over Again Welcome to Morning Math! The current time is... huh, that s not right. Day 1: Over + Over Again Welcome to PCMI! We know you ll learn a great deal of mathematics here maybe some new tricks, maybe some

More information

5 + 9(10) + 3(100) + 0(1000) + 2(10000) =

5 + 9(10) + 3(100) + 0(1000) + 2(10000) = Chapter 5 Analyzing Algorithms So far we have been proving statements about databases, mathematics and arithmetic, or sequences of numbers. Though these types of statements are common in computer science,

More information

Math 230 Final Exam, Spring 2008

Math 230 Final Exam, Spring 2008 c IIT Dept. Applied Mathematics, May 15, 2008 1 PRINT Last name: Signature: First name: Student ID: Math 230 Final Exam, Spring 2008 Conditions. 2 hours. No book, notes, calculator, cell phones, etc. Part

More information

University of New Mexico Department of Computer Science. Midterm Examination. CS 361 Data Structures and Algorithms Spring, 2003

University of New Mexico Department of Computer Science. Midterm Examination. CS 361 Data Structures and Algorithms Spring, 2003 University of New Mexico Department of Computer Science Midterm Examination CS 361 Data Structures and Algorithms Spring, 2003 Name: Email: Print your name and email, neatly in the space provided above;

More information

How many hours would you estimate that you spent on this assignment?

How many hours would you estimate that you spent on this assignment? The first page of your homework submission must be a cover sheet answering the following questions. Do not leave it until the last minute; it s fine to fill out the cover sheet before you have completely

More information

CS 170 Algorithms Spring 2009 David Wagner Final

CS 170 Algorithms Spring 2009 David Wagner Final CS 170 Algorithms Spring 2009 David Wagner Final PRINT your name:, (last) SIGN your name: (first) PRINT your Unix account login: Your TA s name: Name of the person sitting to your left: Name of the person

More information

CS103 Handout 08 Spring 2012 April 20, 2012 Problem Set 3

CS103 Handout 08 Spring 2012 April 20, 2012 Problem Set 3 CS103 Handout 08 Spring 2012 April 20, 2012 Problem Set 3 This third problem set explores graphs, relations, functions, cardinalities, and the pigeonhole principle. This should be a great way to get a

More information

Park School Mathematics Curriculum Book 9, Lesson 2: Introduction to Logarithms

Park School Mathematics Curriculum Book 9, Lesson 2: Introduction to Logarithms Park School Mathematics Curriculum Book 9, Lesson : Introduction to Logarithms We re providing this lesson as a sample of the curriculum we use at the Park School of Baltimore in grades 9-11. If you d

More information

MIDTERM Fundamental Algorithms, Spring 2008, Professor Yap March 10, 2008

MIDTERM Fundamental Algorithms, Spring 2008, Professor Yap March 10, 2008 INSTRUCTIONS: MIDTERM Fundamental Algorithms, Spring 2008, Professor Yap March 10, 2008 0. This is a closed book exam, with one 8 x11 (2-sided) cheat sheet. 1. Please answer ALL questions (there is ONE

More information

MA008/MIIZ01 Design and Analysis of Algorithms Lecture Notes 3

MA008/MIIZ01 Design and Analysis of Algorithms Lecture Notes 3 MA008 p.1/37 MA008/MIIZ01 Design and Analysis of Algorithms Lecture Notes 3 Dr. Markus Hagenbuchner markus@uow.edu.au. MA008 p.2/37 Exercise 1 (from LN 2) Asymptotic Notation When constants appear in exponents

More information

Computational Complexity

Computational Complexity Computational Complexity S. V. N. Vishwanathan, Pinar Yanardag January 8, 016 1 Computational Complexity: What, Why, and How? Intuitively an algorithm is a well defined computational procedure that takes

More information

1 Terminology and setup

1 Terminology and setup 15-451/651: Design & Analysis of Algorithms August 31, 2017 Lecture #2 last changed: August 29, 2017 In this lecture, we will examine some simple, concrete models of computation, each with a precise definition

More information

Midterm 2. Your Exam Room: Name of Person Sitting on Your Left: Name of Person Sitting on Your Right: Name of Person Sitting in Front of You:

Midterm 2. Your Exam Room: Name of Person Sitting on Your Left: Name of Person Sitting on Your Right: Name of Person Sitting in Front of You: CS70 Discrete Mathematics and Probability Theory, Fall 2018 Midterm 2 8:00-10:00pm, 31 October Your First Name: SIGN Your Name: Your Last Name: Your SID Number: Your Exam Room: Name of Person Sitting on

More information

Exercise Sheet #1 Solutions, Computer Science, A M. Hallett, K. Smith a k n b k = n b + k. a k n b k c 1 n b k. a k n b.

Exercise Sheet #1 Solutions, Computer Science, A M. Hallett, K. Smith a k n b k = n b + k. a k n b k c 1 n b k. a k n b. Exercise Sheet #1 Solutions, Computer Science, 308-251A M. Hallett, K. Smith 2002 Question 1.1: Prove (n + a) b = Θ(n b ). Binomial Expansion: Show O(n b ): (n + a) b = For any c 1 > b = O(n b ). Show

More information

1. Consider the conditional E = p q r. Use de Morgan s laws to write simplified versions of the following : The negation of E : 5 points

1. Consider the conditional E = p q r. Use de Morgan s laws to write simplified versions of the following : The negation of E : 5 points Introduction to Discrete Mathematics 3450:208 Test 1 1. Consider the conditional E = p q r. Use de Morgan s laws to write simplified versions of the following : The negation of E : The inverse of E : The

More information

16. . Proceeding similarly, we get a 2 = 52 1 = , a 3 = 53 1 = and a 4 = 54 1 = 125

16. . Proceeding similarly, we get a 2 = 52 1 = , a 3 = 53 1 = and a 4 = 54 1 = 125 . Sequences When we first introduced a function as a special type of relation in Section.3, we did not put any restrictions on the domain of the function. All we said was that the set of x-coordinates

More information

Selection and Adversary Arguments. COMP 215 Lecture 19

Selection and Adversary Arguments. COMP 215 Lecture 19 Selection and Adversary Arguments COMP 215 Lecture 19 Selection Problems We want to find the k'th largest entry in an unsorted array. Could be the largest, smallest, median, etc. Ideas for an n lg n algorithm?

More information

Math 31 Lesson Plan. Day 2: Sets; Binary Operations. Elizabeth Gillaspy. September 23, 2011

Math 31 Lesson Plan. Day 2: Sets; Binary Operations. Elizabeth Gillaspy. September 23, 2011 Math 31 Lesson Plan Day 2: Sets; Binary Operations Elizabeth Gillaspy September 23, 2011 Supplies needed: 30 worksheets. Scratch paper? Sign in sheet Goals for myself: Tell them what you re going to tell

More information

CMPSCI 311: Introduction to Algorithms Second Midterm Exam

CMPSCI 311: Introduction to Algorithms Second Midterm Exam CMPSCI 311: Introduction to Algorithms Second Midterm Exam April 11, 2018. Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more

More information

In-Class Soln 1. CS 361, Lecture 4. Today s Outline. In-Class Soln 2

In-Class Soln 1. CS 361, Lecture 4. Today s Outline. In-Class Soln 2 In-Class Soln 1 Let f(n) be an always positive function and let g(n) = f(n) log n. Show that f(n) = o(g(n)) CS 361, Lecture 4 Jared Saia University of New Mexico For any positive constant c, we want to

More information

CS1800: Strong Induction. Professor Kevin Gold

CS1800: Strong Induction. Professor Kevin Gold CS1800: Strong Induction Professor Kevin Gold Mini-Primer/Refresher on Unrelated Topic: Limits This is meant to be a problem about reasoning about quantifiers, with a little practice of other skills, too

More information

Fall 2016 Test 1 with Solutions

Fall 2016 Test 1 with Solutions CS3510 Design & Analysis of Algorithms Fall 16 Section B Fall 2016 Test 1 with Solutions Instructor: Richard Peng In class, Friday, Sep 9, 2016 Do not open this quiz booklet until you are directed to do

More information

CS 4407 Algorithms Lecture 2: Iterative and Divide and Conquer Algorithms

CS 4407 Algorithms Lecture 2: Iterative and Divide and Conquer Algorithms CS 4407 Algorithms Lecture 2: Iterative and Divide and Conquer Algorithms Prof. Gregory Provan Department of Computer Science University College Cork 1 Lecture Outline CS 4407, Algorithms Growth Functions

More information

i=1 i B[i] B[i] + A[i, j]; c n for j n downto i + 1 do c n i=1 (n i) C[i] C[i] + A[i, j]; c n

i=1 i B[i] B[i] + A[i, j]; c n for j n downto i + 1 do c n i=1 (n i) C[i] C[i] + A[i, j]; c n Fundamental Algorithms Homework #1 Set on June 25, 2009 Due on July 2, 2009 Problem 1. [15 pts] Analyze the worst-case time complexity of the following algorithms,and give tight bounds using the Theta

More information

When we use asymptotic notation within an expression, the asymptotic notation is shorthand for an unspecified function satisfying the relation:

When we use asymptotic notation within an expression, the asymptotic notation is shorthand for an unspecified function satisfying the relation: CS 124 Section #1 Big-Oh, the Master Theorem, and MergeSort 1/29/2018 1 Big-Oh Notation 1.1 Definition Big-Oh notation is a way to describe the rate of growth of functions. In CS, we use it to describe

More information

1 Introduction (January 21)

1 Introduction (January 21) CS 97: Concrete Models of Computation Spring Introduction (January ). Deterministic Complexity Consider a monotonically nondecreasing function f : {,,..., n} {, }, where f() = and f(n) =. We call f a step

More information

282 Math Preview. Chris Brown. September 8, Why This? 2. 2 Logarithms Basic Identities Basic Consequences...

282 Math Preview. Chris Brown. September 8, Why This? 2. 2 Logarithms Basic Identities Basic Consequences... 282 Math Preview Chris Brown September 8, 2005 Contents Why This? 2 2 Logarithms 2 2. Basic Identities.................................... 2 2.2 Basic Consequences.................................. 3 3

More information

Lecture 17: Trees and Merge Sort 10:00 AM, Oct 15, 2018

Lecture 17: Trees and Merge Sort 10:00 AM, Oct 15, 2018 CS17 Integrated Introduction to Computer Science Klein Contents Lecture 17: Trees and Merge Sort 10:00 AM, Oct 15, 2018 1 Tree definitions 1 2 Analysis of mergesort using a binary tree 1 3 Analysis of

More information

CS1800: Mathematical Induction. Professor Kevin Gold

CS1800: Mathematical Induction. Professor Kevin Gold CS1800: Mathematical Induction Professor Kevin Gold Induction: Used to Prove Patterns Just Keep Going For an algorithm, we may want to prove that it just keeps working, no matter how big the input size

More information

COS 341: Discrete Mathematics

COS 341: Discrete Mathematics COS 341: Discrete Mathematics Final Exam Fall 2006 Print your name General directions: This exam is due on Monday, January 22 at 4:30pm. Late exams will not be accepted. Exams must be submitted in hard

More information

Analysis of Algorithms - Using Asymptotic Bounds -

Analysis of Algorithms - Using Asymptotic Bounds - Analysis of Algorithms - Using Asymptotic Bounds - Andreas Ermedahl MRTC (Mälardalens Real-Time Research Center) andreas.ermedahl@mdh.se Autumn 004 Rehersal: Asymptotic bounds Gives running time bounds

More information

Sequences and the Binomial Theorem

Sequences and the Binomial Theorem Chapter 9 Sequences and the Binomial Theorem 9. Sequences When we first introduced a function as a special type of relation in Section.3, we did not put any restrictions on the domain of the function.

More information

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except

More information

CS 170 Algorithms Fall 2014 David Wagner MT2

CS 170 Algorithms Fall 2014 David Wagner MT2 CS 170 Algorithms Fall 2014 David Wagner MT2 PRINT your name:, (last) SIGN your name: (first) Your Student ID number: Your Unix account login: cs170- The room you are sitting in right now: Name of the

More information

6.041/6.431 Spring 2009 Quiz 1 Wednesday, March 11, 7:30-9:30 PM. SOLUTIONS

6.041/6.431 Spring 2009 Quiz 1 Wednesday, March 11, 7:30-9:30 PM. SOLUTIONS 6.0/6.3 Spring 009 Quiz Wednesday, March, 7:30-9:30 PM. SOLUTIONS Name: Recitation Instructor: Question Part Score Out of 0 all 0 a 5 b c 5 d 5 e 5 f 5 3 a b c d 5 e 5 f 5 g 5 h 5 Total 00 Write your solutions

More information

Algorithms and Data Structures 2014 Exercises week 5

Algorithms and Data Structures 2014 Exercises week 5 Algorithms and Data Structures 014 Exercises week 5 October, 014 Exercises marked by ( ) are hard, but they might show up on the exam. Exercises marked by ( ) are even harder, but they will not be on the

More information

Problem Set 1 Solutions

Problem Set 1 Solutions Introduction to Algorithms September 24, 2004 Massachusetts Institute of Technology 6.046J/18.410J Professors Piotr Indyk and Charles E. Leiserson Handout 7 Problem Set 1 Solutions Exercise 1-1. Do Exercise

More information

b + O(n d ) where a 1, b > 1, then O(n d log n) if a = b d d ) if a < b d O(n log b a ) if a > b d

b + O(n d ) where a 1, b > 1, then O(n d log n) if a = b d d ) if a < b d O(n log b a ) if a > b d CS161, Lecture 4 Median, Selection, and the Substitution Method Scribe: Albert Chen and Juliana Cook (2015), Sam Kim (2016), Gregory Valiant (2017) Date: January 23, 2017 1 Introduction Last lecture, we

More information

An analogy from Calculus: limits

An analogy from Calculus: limits COMP 250 Fall 2018 35 - big O Nov. 30, 2018 We have seen several algorithms in the course, and we have loosely characterized their runtimes in terms of the size n of the input. We say that the algorithm

More information

1 Closest Pair of Points on the Plane

1 Closest Pair of Points on the Plane CS 31: Algorithms (Spring 2019): Lecture 5 Date: 4th April, 2019 Topic: Divide and Conquer 3: Closest Pair of Points on a Plane Disclaimer: These notes have not gone through scrutiny and in all probability

More information

CISC-102 Fall 2017 Week 1 David Rappaport Goodwin G-532 Office Hours: Tuesday 1:30-3:30

CISC-102 Fall 2017 Week 1 David Rappaport Goodwin G-532 Office Hours: Tuesday 1:30-3:30 Week 1 Fall 2017 1 of 42 CISC-102 Fall 2017 Week 1 David Rappaport daver@cs.queensu.ca Goodwin G-532 Office Hours: Tuesday 1:30-3:30 Homework Homework every week. Keep up to date or you risk falling behind.

More information

data structures and algorithms lecture 2

data structures and algorithms lecture 2 data structures and algorithms 2018 09 06 lecture 2 recall: insertion sort Algorithm insertionsort(a, n): for j := 2 to n do key := A[j] i := j 1 while i 1 and A[i] > key do A[i + 1] := A[i] i := i 1 A[i

More information

Math 230 Final Exam, Spring 2009

Math 230 Final Exam, Spring 2009 IIT Dept. Applied Mathematics, May 13, 2009 1 PRINT Last name: Signature: First name: Student ID: Math 230 Final Exam, Spring 2009 Conditions. 2 hours. No book, notes, calculator, cell phones, etc. Part

More information

CS Data Structures and Algorithm Analysis

CS Data Structures and Algorithm Analysis CS 483 - Data Structures and Algorithm Analysis Lecture II: Chapter 2 R. Paul Wiegand George Mason University, Department of Computer Science February 1, 2006 Outline 1 Analysis Framework 2 Asymptotic

More information

Lesson One Hundred and Sixty-One Normal Distribution for some Resolution

Lesson One Hundred and Sixty-One Normal Distribution for some Resolution STUDENT MANUAL ALGEBRA II / LESSON 161 Lesson One Hundred and Sixty-One Normal Distribution for some Resolution Today we re going to continue looking at data sets and how they can be represented in different

More information

Summer HSSP Lecture Notes Week 1. Lane Gunderman, Victor Lopez, James Rowan

Summer HSSP Lecture Notes Week 1. Lane Gunderman, Victor Lopez, James Rowan Summer HSSP Lecture Notes Week 1 Lane Gunderman, Victor Lopez, James Rowan July 6, 014 First Class: proofs and friends 1 Contents 1 Glossary of symbols 4 Types of numbers 5.1 Breaking it down...........................

More information

Big O 2/14/13. Administrative. Does it terminate? David Kauchak cs302 Spring 2013

Big O 2/14/13. Administrative. Does it terminate? David Kauchak cs302 Spring 2013 /4/3 Administrative Big O David Kauchak cs3 Spring 3 l Assignment : how d it go? l Assignment : out soon l CLRS code? l Videos Insertion-sort Insertion-sort Does it terminate? /4/3 Insertion-sort Loop

More information

Grade 11/12 Math Circles Fall Nov. 5 Recurrences, Part 2

Grade 11/12 Math Circles Fall Nov. 5 Recurrences, Part 2 1 Faculty of Mathematics Waterloo, Ontario Centre for Education in Mathematics and Computing Grade 11/12 Math Circles Fall 2014 - Nov. 5 Recurrences, Part 2 Running time of algorithms In computer science,

More information

Lecture 2. Fundamentals of the Analysis of Algorithm Efficiency

Lecture 2. Fundamentals of the Analysis of Algorithm Efficiency Lecture 2 Fundamentals of the Analysis of Algorithm Efficiency 1 Lecture Contents 1. Analysis Framework 2. Asymptotic Notations and Basic Efficiency Classes 3. Mathematical Analysis of Nonrecursive Algorithms

More information

More Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018

More Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018 CS 61B More Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018 Here is a review of some formulas that you will find useful when doing asymptotic analysis. ˆ N i=1 i = 1 + 2 + 3 + 4 + + N = N(N+1)

More information

Math 6 Common Core. Mathematics Prince George s County Public Schools

Math 6 Common Core. Mathematics Prince George s County Public Schools Math 6 Common Core Mathematics Prince George s County Public Schools 2014-2015 Course Code: Prerequisites: Successful completion of Math 5 Common Core This course begins the transition from the heavy emphasis

More information

Fall 2017 Test II review problems

Fall 2017 Test II review problems Fall 2017 Test II review problems Dr. Holmes October 18, 2017 This is a quite miscellaneous grab bag of relevant problems from old tests. Some are certainly repeated. 1. Give the complete addition and

More information

Problem Set 2 Solutions

Problem Set 2 Solutions Introduction to Algorithms October 1, 2004 Massachusetts Institute of Technology 6.046J/18.410J Professors Piotr Indyk and Charles E. Leiserson Handout 9 Problem Set 2 Solutions Reading: Chapters 5-9,

More information

Menu. Lecture 2: Orders of Growth. Predicting Running Time. Order Notation. Predicting Program Properties

Menu. Lecture 2: Orders of Growth. Predicting Running Time. Order Notation. Predicting Program Properties CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 2: Orders of Growth Menu Predicting program properties Orders of Growth: O, Ω Course Survey

More information

McGill University Faculty of Science. Solutions to Practice Final Examination Math 240 Discrete Structures 1. Time: 3 hours Marked out of 60

McGill University Faculty of Science. Solutions to Practice Final Examination Math 240 Discrete Structures 1. Time: 3 hours Marked out of 60 McGill University Faculty of Science Solutions to Practice Final Examination Math 40 Discrete Structures Time: hours Marked out of 60 Question. [6] Prove that the statement (p q) (q r) (p r) is a contradiction

More information

CS F-01 Algorithm Analysis 1

CS F-01 Algorithm Analysis 1 CS673-016F-01 Algorithm Analysis 1 01-0: Syllabus Office Hours Course Text Prerequisites Test Dates & Testing Policies Try to combine tests Grading Policies 01-1: How to Succeed Come to class. Pay attention.

More information

Discrete Mathematics: Midterm Test with Answers. Professor Callahan, section (A or B): Name: NetID: 30 multiple choice, 3 points each:

Discrete Mathematics: Midterm Test with Answers. Professor Callahan, section (A or B): Name: NetID: 30 multiple choice, 3 points each: Discrete Mathematics: Midterm Test with Answers Professor Callahan, section (A or B): Name: NetID: 30 multiple choice, 3 points each: 1. If f is defined recursively by: f (0) = -2, f (1) = 1, and for n

More information

Algebra Exam. Solutions and Grading Guide

Algebra Exam. Solutions and Grading Guide Algebra Exam Solutions and Grading Guide You should use this grading guide to carefully grade your own exam, trying to be as objective as possible about what score the TAs would give your responses. Full

More information

CSCE 750 Final Exam Answer Key Wednesday December 7, 2005

CSCE 750 Final Exam Answer Key Wednesday December 7, 2005 CSCE 750 Final Exam Answer Key Wednesday December 7, 2005 Do all problems. Put your answers on blank paper or in a test booklet. There are 00 points total in the exam. You have 80 minutes. Please note

More information

Homework every week. Keep up to date or you risk falling behind. Quizzes and Final exam are based on homework questions.

Homework every week. Keep up to date or you risk falling behind. Quizzes and Final exam are based on homework questions. Week 1 Fall 2016 1 of 25 CISC-102 Fall 2016 Week 1 David Rappaport daver@cs.queensu.ca Goodwin G-532 Office Hours: Monday 1:00-3:00 (or by appointment) Homework Homework every week. Keep up to date or

More information

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis Lecture 15 Class URL: http://vlsicad.ucsd.edu/courses/cse21-s14/ Lecture 15 Notes Goals for this week Big-O complexity

More information

Math 391: Midterm 1.0 Spring 2016

Math 391: Midterm 1.0 Spring 2016 Math 391: Midterm 1.0 Spring 2016 James Skon skonjp@kenyon.edu Test date: October 5 Submission Instructions: Give all your assumptions. Show all your work. Be as complete as possible. Grading Problem 1

More information

Analysis of Algorithms

Analysis of Algorithms October 1, 2015 Analysis of Algorithms CS 141, Fall 2015 1 Analysis of Algorithms: Issues Correctness/Optimality Running time ( time complexity ) Memory requirements ( space complexity ) Power I/O utilization

More information

CS 70 Discrete Mathematics and Probability Theory Summer 2016 Dinh, Psomas, and Ye Final Exam

CS 70 Discrete Mathematics and Probability Theory Summer 2016 Dinh, Psomas, and Ye Final Exam CS 70 Discrete Mathematics and Probability Theory Summer 2016 Dinh, Psomas, and Ye Final Exam PRINT Your Name:, (last) By signing below, I agree that (a) I will not give or receive help from others during

More information

CS 361, Lecture 14. Outline

CS 361, Lecture 14. Outline Bucket Sort CS 361, Lecture 14 Jared Saia University of New Mexico Bucket sort assumes that the input is drawn from a uniform distribution over the range [0, 1) Basic idea is to divide the interval [0,

More information

MAS275 Probability Modelling Exercises

MAS275 Probability Modelling Exercises MAS75 Probability Modelling Exercises Note: these questions are intended to be of variable difficulty. In particular: Questions or part questions labelled (*) are intended to be a bit more challenging.

More information

Agenda. We ve discussed

Agenda. We ve discussed Agenda We ve discussed Now Next C++ basics Some built-in data structures and their applications: stack, map, vector, array The Fibonacci example showing the importance of good algorithms and asymptotic

More information

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 1

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 1 CS 70 Discrete Mathematics and Probability Theory Fall 013 Vazirani Note 1 Induction Induction is a basic, powerful and widely used proof technique. It is one of the most common techniques for analyzing

More information

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only 1/53 Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only Larry Moss Indiana University Nordic Logic School August 7-11, 2017 2/53 An example that we ll see a few times Consider the

More information

CS280, Spring 2004: Final

CS280, Spring 2004: Final CS280, Spring 2004: Final 1. [4 points] Which of the following relations on {0, 1, 2, 3} is an equivalence relation. (If it is, explain why. If it isn t, explain why not.) Just saying Yes or No with no

More information

CSCE 222 Discrete Structures for Computing. Review for Exam 2. Dr. Hyunyoung Lee !!!

CSCE 222 Discrete Structures for Computing. Review for Exam 2. Dr. Hyunyoung Lee !!! CSCE 222 Discrete Structures for Computing Review for Exam 2 Dr. Hyunyoung Lee 1 Strategy for Exam Preparation - Start studying now (unless have already started) - Study class notes (lecture slides and

More information

Mathematical Olympiad for Girls

Mathematical Olympiad for Girls UKMT UKMT UKMT United Kingdom Mathematics Trust Mathematical Olympiad for Girls Organised by the United Kingdom Mathematics Trust These are polished solutions and do not illustrate the process of failed

More information

Growth of Functions (CLRS 2.3,3)

Growth of Functions (CLRS 2.3,3) Growth of Functions (CLRS 2.3,3) 1 Review Last time we discussed running time of algorithms and introduced the RAM model of computation. Best-case running time: the shortest running time for any input

More information

Discrete Mathematics and Probability Theory Summer 2015 Chung-Wei Lin Midterm 1

Discrete Mathematics and Probability Theory Summer 2015 Chung-Wei Lin Midterm 1 CS 70 Discrete Mathematics and Probability Theory Summer 2015 Chung-Wei Lin Midterm 1 PRINT Your Name:, last) first) SIGN Your Name: PRINT Your Student ID: CIRCLE your exam room: 2050 VLSB 10 EVANS OTHER

More information

N/4 + N/2 + N = 2N 2.

N/4 + N/2 + N = 2N 2. CS61B Summer 2006 Instructor: Erin Korber Lecture 24, 7 Aug. 1 Amortized Analysis For some of the data structures we ve discussed (namely hash tables and splay trees), it was claimed that the average time

More information

COMP 2804 Assignment 4

COMP 2804 Assignment 4 COMP 2804 Assignment 4 Due: Thursday April 5, before 11:55pm, through culearn. Assignment Policy: Your assignment must be submitted as one single PDF file through culearn. Late assignments will not be

More information

University of New Mexico Department of Computer Science. Final Examination. CS 362 Data Structures and Algorithms Spring, 2007

University of New Mexico Department of Computer Science. Final Examination. CS 362 Data Structures and Algorithms Spring, 2007 University of New Mexico Department of Computer Science Final Examination CS 362 Data Structures and Algorithms Spring, 2007 Name: Email: Print your name and email, neatly in the space provided above;

More information

Discrete Mathematics and Probability Theory Summer 2014 James Cook Final Exam

Discrete Mathematics and Probability Theory Summer 2014 James Cook Final Exam CS 70 Discrete Mathematics and Probability Theory Summer 2014 James Cook Final Exam Friday August 15, 2014, 5:10pm-8:10pm. Instructions: Do not turn over this page until the proctor tells you to. Don t

More information

Some Review Problems for Exam 3: Solutions

Some Review Problems for Exam 3: Solutions Math 3355 Spring 017 Some Review Problems for Exam 3: Solutions I thought I d start by reviewing some counting formulas. Counting the Complement: Given a set U (the universe for the problem), if you want

More information

PRACTICE PROBLEMS FOR EXAM 1

PRACTICE PROBLEMS FOR EXAM 1 PRACTICE PROBLEMS FOR EXAM 1 Math 3160Q Spring 01 Professor Hohn Below is a list of practice questions for Exam 1. Any quiz, homework, or example problem has a chance of being on the exam. For more practice,

More information

Carleton University. Final Examination Fall DURATION: 2 HOURS No. of students: 223

Carleton University. Final Examination Fall DURATION: 2 HOURS No. of students: 223 Carleton University Final Examination Fall 2016 DURATION: 2 HOURS No. of students: 223 Department Name & Course Number: Computer Science COMP 2804A Course Instructor: Michiel Smid Authorized memoranda:

More information

Taking Stock. IE170: Algorithms in Systems Engineering: Lecture 3. Θ Notation. Comparing Algorithms

Taking Stock. IE170: Algorithms in Systems Engineering: Lecture 3. Θ Notation. Comparing Algorithms Taking Stock IE170: Algorithms in Systems Engineering: Lecture 3 Jeff Linderoth Department of Industrial and Systems Engineering Lehigh University January 19, 2007 Last Time Lots of funky math Playing

More information

Discrete Mathematics and Probability Theory Fall 2014 Anant Sahai Midterm 1

Discrete Mathematics and Probability Theory Fall 2014 Anant Sahai Midterm 1 EECS 70 Discrete Mathematics and Probability Theory Fall 2014 Anant Sahai Midterm 1 Exam location: 10 Evans, Last name starting with A-B or R-T PRINT your student ID: PRINT AND SIGN your name:, (last)

More information

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models Contents Mathematical Reasoning 3.1 Mathematical Models........................... 3. Mathematical Proof............................ 4..1 Structure of Proofs........................ 4.. Direct Method..........................

More information

Data Structures and Algorithms Winter Semester

Data Structures and Algorithms Winter Semester Page 0 German University in Cairo December 26, 2015 Media Engineering and Technology Faculty Prof. Dr. Slim Abdennadher Dr. Wael Abouelsadaat Data Structures and Algorithms Winter Semester 2015-2016 Final

More information

(2) Generalize De Morgan s laws for n sets and prove the laws by induction. 1

(2) Generalize De Morgan s laws for n sets and prove the laws by induction. 1 ARS DIGITA UNIVERSITY MONTH 2: DISCRETE MATHEMATICS PROFESSOR SHAI SIMONSON PROBLEM SET 2 SOLUTIONS SET, FUNCTIONS, BIG-O, RATES OF GROWTH (1) Prove by formal logic: (a) The complement of the union of

More information

CS383, Algorithms Spring 2009 HW1 Solutions

CS383, Algorithms Spring 2009 HW1 Solutions Prof. Sergio A. Alvarez http://www.cs.bc.edu/ alvarez/ 21 Campanella Way, room 569 alvarez@cs.bc.edu Computer Science Department voice: (617) 552-4333 Boston College fax: (617) 552-6790 Chestnut Hill,

More information

Algebra 1. Mathematics Course Syllabus

Algebra 1. Mathematics Course Syllabus Mathematics Algebra 1 2017 2018 Course Syllabus Prerequisites: Successful completion of Math 8 or Foundations for Algebra Credits: 1.0 Math, Merit The fundamental purpose of this course is to formalize

More information

CS 350 Algorithms and Complexity

CS 350 Algorithms and Complexity 1 CS 350 Algorithms and Complexity Fall 2015 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower

More information