public static void SecondndLargestfromarray()
{
var scan = new Scanner(System.in);
var n = scan.nextInt();
long l=Long.MIN_VALUE;
long p=Long.MIN_VALUE;
for (int i = 0; i < n; i++) {
var sc = scan.nextLong();
if(sc>l)
{
p=l;
l=sc;
}
else if(sc>p ) p = sc;
}
System.out.println(p);
}
// [10,30,15,4,2,5]
// when you get element< smallest
//interchange second_smallest <-> smallest
//smallest= element
//else if u get element< second_smallest
//if element != smallest then
//second_smallest= element
//find neat code below
long min=Integer.MAX_VALUE;
long sMin= Integer.MAX_VALUE;
for(int i=0; i<n; i++){
if(a[i]< min){
sMin=min;
min= a[i];
}
else if(a[i]<sMin && a[i]!= min){
sMin= a[i];
}
}
/* C program to print second largest element of the array*/
//Save it as SecondLargestElementArray.c
#include<stdio.h>
#include<limits.h>
int main(){
int i,n;
printf("Enter the size of array : ");
scanf("%d",&n);
//Declaring array
int arr[n];
printf("Enter the elements of the array : ");
for(i=0;i<n;i++) {
scanf("%d",&arr[i]);
}
//Declaring maximum element
int maximum = INT_MIN;
//Comparing with each element and find maximum element
for(i=0;i<n;i++) {
if(arr[i] > maximum) {
maximum = arr[i];
}
}
printf("The maximum value is : %d", maximum);
int second_max = INT_MIN;
//Finding Second largest element.
//Comparing with each element and also checking it is not equal to max
for(i=0;i<n;i++) {
if(arr[i] > second_max && arr[i]!=maximum) {
second_max = arr[i];
}
}
printf("
The second maximum value is : %d", second_max);
}
Input:
Enter the size of array :
6
Enter the elements of the array :
4 3 8 0 8 7
Output:
The maximum value is : 8
The second maximum value is : 7
How would you find the second largest number in an array?
// Java program to find second largest
// element in an array
import java.util.*;
class GFG{
// Function to print the
// second largest elements
static void print2largest(int arr[],
int arr_size)
{
int i, first, second;
// There should be
// atleast two elements
if (arr_size < 2)
{
System.out.printf(" Invalid Input ");
return;
}
// Sort the array
Arrays.sort(arr);
// Start from second last element
// as the largest element is at last
for (i = arr_size - 2; i >= 0; i--)
{
// If the element is not
// equal to largest element
if (arr[i] != arr[arr_size - 1])
{
System.out.printf("The second largest " +
"element is %d
", arr[i]);
return;
}
}
System.out.printf("There is no second " +
"largest element
");
}
// Driver code
public static void main(String[] args)
{
int arr[] = {12, 35, 1, 10, 34, 1};
int n = arr.length;
print2largest(arr, n);
}
}
// This code is contributed by gauravrajput1
// Java program to find second largest
// element in an array
import java.util.*;
class GFG{
// Function to print the
// second largest elements
static void print2largest(int arr[],
int arr_size)
{
int i, first, second;
// There should be
// atleast two elements
if (arr_size < 2)
{
System.out.printf(" Invalid Input ");
return;
}
// Sort the array
Arrays.sort(arr);
// Start from second last element
// as the largest element is at last
for (i = arr_size - 2; i >= 0; i--)
{
// If the element is not
// equal to largest element
if (arr[i] != arr[arr_size - 1])
{
System.out.printf("The second largest " +
"element is %d
", arr[i]);
return;
}
}
System.out.printf("There is no second " +
"largest element
");
}
// Driver code
public static void main(String[] args)
{
int arr[] = {12, 35, 1, 10, 34, 1};
int n = arr.length;
print2largest(arr, n);
}
}
// This code is contributed by gauravrajput1
import java.util.Random;
public class secondBiggestNumber {
public static void main (String[] args){
// creating array
int[] array1 = new int[8];
// randomly filling with 8 elements
fill(array1, -100, 100);
// printing them out
for (int i = 0; i < array1.length ; i++) {
System.out.println(array1[i] + " ");
}
//sorting them by ascending order
int current = 0;
for (int i = 0; i < array1.length ; i++) {
for (int j = i+1; j < array1.length ; j++) {
if (array1[i]>array1[j]) {
current = array1[i];
array1[i] = array1[j];
array1[j] = current;
}
}
}
//printing out the second biggest number
System.out.println("The second biggest number: " + array1[6] );
}
private static void fill(int[] array, int lowerBound, int highBound) {
Random random = new Random();
int bound = highBound - lowerBound;
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(bound) + lowerBound;
}
}
}