Use stack please (Java) In Java Given an array A of n integers, a leader element
ID: 3588246 • Letter: U
Question
Use stack please (Java) In Java Given an array A of n integers, a leader element of the array A is the element that appears more than half of the time in A. Implement in Java an O(n) worst-case algorithm that uses a stack static int leader(int[] A) to find a leader element and return the index (any) of the leader in A. The program must returns -1 if no leader element exists. Examples: int[] a = {23, 23, 67, 23, 67, 23, 45}; ====> leader(a) = 5 int[] a = {23, 24, 67, 23, 67, 23, 45}; ====> leader(a) = -1
Explanation / Answer
// Simple C program to print next greater elements
// in a given array
#include<stdio.h>
/* prints element and NGE pair for all elements of
arr[] of size n */
void printNGE(int arr[], int n)
{
int next, i, j;
for (i=0; i<n; i++)
{
next = -1;
for (j = i+1; j<n; j++)
{
if (arr[i] < arr[j])
{
next = arr[j];
break;
}
}
printf("%d -- %dn", arr[i], next);
}
}
int main()
{
int arr[]= {11, 13, 21, 3};
int n = sizeof(arr)/sizeof(arr[0]);
printNGE(arr, n);
getchar();
return 0;
}
// Simple C program to print next greater elements
// in a given array
#include<stdio.h>
/* prints element and NGE pair for all elements of
arr[] of size n */
void printNGE(int arr[], int n)
{
int next, i, j;
for (i=0; i<n; i++)
{
next = -1;
for (j = i+1; j<n; j++)
{
if (arr[i] < arr[j])
{
next = arr[j];
break;
}
}
printf("%d -- %dn", arr[i], next);
}
}
int main()
{
int arr[]= {11, 13, 21, 3};
int n = sizeof(arr)/sizeof(arr[0]);
printNGE(arr, n);
getchar();
return 0;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.