DulcetAirman icon

max of vectors (2)

DulcetAirman | PRO | 08/16/18 08:57:43 PM UTC | 0 ⭐ | 880 👁️ | Never ⏰ | []
Java |

1.12 KB

|

None

|

0 👍

/

0 👎

package ch.claude_martin;
 
import java.util.Arrays;
import java.util.Optional;
import java.util.stream.Stream;
 
public class SomeClass {
  static class Tuple implements Comparable<Tuple> {
    final int max;
    final int[] vector;
 
    public Tuple(int[] vector) {
      assert vector.length > 0;
      this.max = Arrays.stream(vector).max().getAsInt();
      this.vector = vector;
    }
 
    @Override
    public int compareTo(Tuple o) {
      return Integer.compare(o.max, this.max);
    }
 
    public int getMax() {
      return max;
    }
 
    public int[] getVector() {
      return vector;
    }
 
  }
 
  public static void main(String[] args) {
    final int[] v1 = { 3, 5 };
    final int[] v2 = { 3, 6 };
    final int[] v3 = {};
    final int[] v4 = { -1, Integer.MIN_VALUE };
    final Optional<Tuple> tuple = Stream.of(v1, v2, v3, v4).filter(v -> v.length > 0).map(v -> new Tuple(v)).sorted()
        .findFirst();
 
    if (tuple.isPresent())
      System.out.println(tuple.get().getMax() + " -> " + Arrays.toString(tuple.get().getVector()));
    else
      System.out.println("No data");
  }
}

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎