public class ArrayMagic {
public int findSecondLargestElement(int[] array) {
//TODO: Write your code here
if(array.length <= 1){
return -1;
}
int largest = Integer.MIN_VALUE;
for(int num: array){
if(num > largest){
largest = num;
}
}
int secondLargest = Integer.MIN_VALUE;
for(int num: array){
if(num < largest && num >= secondLargest) {
secondLargest = num;
}
}
if(secondLargest == Integer.MIN_VALUE){
return -1;
}
return secondLargest;
}
}
if(secondLargest == Integer.MIN_VALUE){
return -1;
}
이 부분은 배열이 같은 숫자로만 채워져있을 경우에 SecondLargestNumber가 변하지 않는다는 것을 이용한 것이다.
728x90
'Java' 카테고리의 다른 글
[Java] ArrayList를 이용해서 배수 배열 구하기 (0) | 2023.08.09 |
---|---|
[Java] ArrayList 사용해서 약수 배열 구하기 (0) | 2023.08.09 |
[Java] 배열 뒤집기 (0) | 2023.08.09 |
[Java] GCD구하기 (0) | 2023.08.03 |
[Java] LCM 찾기 (0) | 2023.08.03 |