Comp Sci More efficient way of doing this? (java exercise)

  • Thread starter Thread starter Arnoldjavs3
  • Start date Start date
  • Tags Tags
    Exercise
Click For Summary
The discussion centers on a Java exercise that requires returning a new array containing the first elements of two given integer arrays, with specific handling for empty arrays. The initial solution involves multiple conditional checks to determine the lengths of the arrays before constructing the result. Participants question whether there is a more efficient method that avoids these checks, considering Java's fixed-size arrays. It is noted that while some programming languages allow dynamic resizing of arrays, Java does not, making the current solution the most straightforward approach. The consensus is that given Java's limitations, the existing solution is optimal for this task.
Arnoldjavs3
Messages
191
Reaction score
3

Homework Statement


Given 2 int arrays, a and b, of any length, return a new array with the first element of each array. If either array is length 0, ignore that array.

front11([1, 2, 3], [7, 9, 8]) → [1, 7]
front11([1], [2]) → [1, 2]
front11([1, 7], []) → [1]

Homework Equations

The Attempt at a Solution


Java:
public int[] front11(int[] a, int[] b) {
  if (a.length>=1 && b.length>=1) {
    return new int[] {a[0], b[0]};
  }
  else if(b.length==0 && a.length>0) {
    return new int[] {a[0]};
  }
  else if(b.length>1 && a.length==0) {
    return new int[] {b[0]};
  }
  return new int[] {};
}

Is there a more efficient way of doing this without having to check the length of both arrays?
 
Physics news on Phys.org
Can java increase the size of arrays easily? You could initialize an array, then add a[0] to it if a.length>0, then add b[0] to it if b.length>0.
 
mfb said:
Can java increase the size of arrays easily? You could initialize an array, then add a[0] to it if a.length>0, then add b[0] to it if b.length>0.
Is the bolded a hint ? Since arrays are of fixed lengths. I was just thinking as I was doing these challenges that writing a bunch of if statements felt a little too trivial and not challenging...
 
Arnoldjavs3 said:
Is the bolded a hint ?
No, it was a question. I never worked with Java. I know some languages can do that easily (e.g. PHP, JS and python), while in some others it is not advisable (e.g. C++) or completely impossible.

If an array cannot change size, your solution should be the easiest option.
 

Similar threads

  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 18 ·
Replies
18
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 17 ·
Replies
17
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 1 ·
Replies
1
Views
1K