week 06 practice
play

Week 06 practice Get familiar with functions and arrays Note: In - PDF document

CS31: Introduction to Computer Science I Week 06 practice Get familiar with functions and arrays Note: In this practice, you can assume all the parameters passed into these functions are valid (i.e., size is greater than 0, array is large


  1. CS31: Introduction to Computer Science I Week 06 practice Get familiar with functions and arrays Note: In this practice, you can assume all the parameters passed into these functions are valid (i.e., size is greater than 0, array is large enough) Problem 1 Implement getAverage() function. double getAverage(double a[], int n) { } Have you tried the following test cases: a = {1.0, 2.0, 3.0}, n = 3? Problem 2 Implement getVariance() function. The definition of variance is: double getVariance(double a[], int n) { } Have you tried the following test cases: a = {1.0, 2.0, 3.0}, n = 3? 1

  2. Problem 3 Implement countNumNegativeNumbers() function, which returns the amount of negative numbers in an array. int countNumNegativeNumbers(int a[], int n) { } Have you tried the following test cases: a = {5, 2, -1, 6, 3, -7, -4}, n = 7? a = {0}, n = 1? Problem 4 Implement getMinValue() function, which returns the minimum value in the array int getMinValue(int a[], int n) { } Have you tried the following test cases: a = {1, 2, 3, 4}, n = 4? a = {4, 3, 2, 1}, n = 4? a = {2, 5, 9, 1, 3}, n = 5? Problem 5 Implement getGreatCommonDivisor() function. Note that the parameters a and b are guaranteed to be positive. int getGreatCommonDivisor(int a, int b) { } 2

  3. Have you tried the following test cases: a = 25, b = 100? a = 18, b = 48? a = 1, b = 1? Problem 6 Implement getGreatCommonDivisorV2() function. The difference is that you are going to get an array of integers instead of just 2 numbers. int getGreatCommonDivisorV2(int a[], int n) { } Have you tried the following test cases: a = {25, 50, 100}, n = 3? a = {48, 18, 54, 66}, n = 4? a = {10, 10}, n = 2? a = {1000}, n = 1? Problem 7 Implement isArrayNonDecreasing() function. bool isArrayNonDecreasing(int a[], int n) { } 3

  4. Have you tried the following test cases: a = {20, 30, 40}, n = 3? a = {40, 30, 20, 10}, n = 4? a = {23, 59, 42}, n = 3? a = {10, 10, 10}, n = 3? a = {1000}, n = 1? Problem 8 Implement isSubArray() function to test if a2 is a subarray of a1. X is a subarray of Y if a (contiguous) segment of array Y is identical to array X. bool isSubArray(int a1[], int n1, int a2[], int n2) { } Have you tried the following test cases: a1 = {20, 30, 40}, n1 = 3, a2 = {20, 40}, n2 = 2? a1 = {20, 30, 40}, n1 = 3, a2 = {20, 30}, n2 = 2? a1 = {20, 30}, n1 = 2, a2 = {20, 30, 40}, n2 = 3? a1 = {20, 30, 40}, n1 = 3, a2 = {40, 30, 20}, n2 = 3? a1 = {20, 30, 40}, n1 = 3, a2 = {20}, n2 = 1? Problem 9 Implement isSubSequence() function to test if a2 is a subsequence of a1. X is a subsequence of Y if we delete some elements from array Y, without changing the order of the remaining values, are identical to X. 4

  5. bool isSubSequence(int a1[], int n1, int a2[], int n2) { } Have you tried the following test cases: a1 = {20, 30, 40}, n1 = 3, a2 = {20, 40}, n2 = 2? a1 = {20, 30, 40}, n1 = 3, a2 = {20, 30}, n2 = 2? a1 = {20, 30}, n1 = 2, a2 = {20, 30, 40}, n2 = 3? a1 = {20, 30, 40}, n1 = 3, a2 = {40, 30, 20}, n2 = 3? a1 = {20, 9, 30, 40, 8}, n1 = 5, a2 = {20, 30, 40}, n2 = 3? a1 = {20, 30, 40}, n1 = 3, a2 = {20}, n2 = 1? 5

  6. Problem 10 Implement sort() function to rearrange elements in the array in a non-decreasing order. void sort(int a[], int n) { } Have you tried the following test cases: a = {20, 30, 40}, n = 3? a = {40, 30, 20}, n = 3? a = {20, 40, 30}, n = 3? a = {1, 9, 2, 8, 3, 7, 4, 6, 5}, n = 9? a = {1000}, n = 1? 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend