Question
1. Assume you have a multidimensional array M x N and you wish to write a function that produces an average of the items in
1. Assume you have a multidimensional array M x N and you wish to write a function that produces an average of the items in the entire array using a sum/count approach. You have two alternatives: a) static int sumArray(int[][] a) { int sum = 0, count = 0; for (int i = 0; i < a[0].length; i++) { for (int j = 0; j < a.length; j++) { sum += a[i][j]; } } return sum; } OR: b) static int sumArray2(int[][] a) { int sum = 0; for (int i = 0; i < a[0].length; i++) { for (int j = 0; j < a.length; j++) { sum += a[j][i]; } } return sum; } Which approach will be faster and why (you can assume each row is contiguous in memory)?
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started