How to print the N largest numbers in array with Java

2 Answers

0 votes
import java.util.Arrays;
import java.util.Collections;
 
public class MyClass {
    public static void printNLargest(Integer[] arr, int N) {
        Arrays.sort(arr, Collections.reverseOrder());
  
        for (int i = 0; i < N; i++)
            System.out.print(arr[i] + " ");
    }
 
    public static void main(String[] args)
    {
        Integer arr[] = new Integer[] { 50, 99, 20, 100, 76, 33, 87, 40, 80, 85 };
        int N = 4;
         
        printNLargest(arr, N);
    }
}
 
 
 
  
/*
run:
  
100 99 87 85 
  
*/

 



answered May 14, 2022 by avibootz
0 votes
import java.util.Arrays;
import java.util.ArrayList;
import java.util.Collections;

public class MyClass {
    public static void printNLargest(int[] arr, int N) {
        Integer[] iarray = Arrays.stream( arr ).boxed().toArray( Integer[] :: new);
        
        Arrays.sort(iarray, Collections.reverseOrder());
        
        for (int i = 0; i < N; i++)
            System.out.print(iarray[i] + " ");
    }

    public static void main(String[] args)
    {
        int[] arr = { 50, 99, 20, 100, 76, 33, 87, 40, 80, 85 };
        int N = 4;
          
        printNLargest(arr, N);
    }
}



 
/*
run:
 
100 99 87 85 
 
*/

 



answered May 14, 2022 by avibootz

Related questions

1 answer 130 views
2 answers 152 views
1 answer 115 views
1 answer 120 views
1 answer 117 views
1 answer 121 views
1 answer 126 views
...