반응형
해당 글에서는 하나의 배열을 기준으로 요소들 간의 비교 방법에 대해서 알아봅니다.
1) 하나의 요소를 기준으로 전체 요소 비교 방법
1. 하나의 요소 기준 전체 요소 비교 : 본인 포함
💡 하나의 요소 기준 전체 요소 비교 : 본인 포함
- 비교 기준이 되는 arr[i] 값을 기준으로 ‘내 자신’을 포함하여 다음 요소(arr[j])를 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i++) {
for (int j = i; j < arr.length; j++) {
System.out.println("arr[i] :: " + arr[i] + " arr[j] :: " + arr[j]);
}
}
arr[i] | arr[j] |
1 | 1 |
1 | 2 |
1 | 3 |
1 | 4 |
1 | 4 |
1 | 5 |
1 | 6 |
2 | 2 |
2 | 3 |
2 | 4 |
2 | 5 |
2 | 6 |
3 | 3 |
3 | 4 |
3 | 4 |
3 | 5 |
3 | 6 |
4 | 4 |
4 | 4 |
4 | 5 |
4 | 6 |
4 | 4 |
4 | 5 |
4 | 6 |
5 | 5 |
5 | 6 |
6 | 6 |
2. 하나의 요소 기준 전체 요소 비교 : 본인 제외
💡 하나의 요소 기준 전체 요소 비교 : 본인 제외
- 비교 기준이 되는 arr[i] 값을 기준으로 ‘내 자신을 제외’하고 다음 요소(arr[j])를 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i++) {
for (int j = i; j < arr.length; j++) {
System.out.println("arr[i] :: " + arr[i] + " arr[j] :: " + arr[j]);
}
}
arr[i] | arr[j] |
1 | 2 |
1 | 3 |
1 | 4 |
1 | 4 |
1 | 5 |
1 | 6 |
2 | 3 |
2 | 4 |
2 | 4 |
2 | 5 |
2 | 6 |
3 | 4 |
3 | 4 |
3 | 5 |
3 | 6 |
4 | 4 |
4 | 5 |
4 | 6 |
4 | 5 |
4 | 6 |
5 | 6 |
2) 인접한 요소를 묶어서 비교 방법
1. 인접한 2개의 요소를 배열로 구성하여 비교방법
💡 인접한 2개의 요소를 배열로 구성하여 비교방법
- 배열을 순회하면서 ‘인접한 배열’에서 2개의 요소를 하나로 묶어서 배열로 재 구성하여 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i++) {
int[] threeArr = Arrays.copyOfRange(arr, i, i + 2);
System.out.println("two Arrays :: " + Arrays.toString(threeArr));
}
결과값 (two Arrays) |
[1, 2] |
[2, 3] |
[3, 4] |
[4, 4] |
[4, 5] |
[5, 6] |
[6, 0] |
2. 인접한 3개의 요소를 배열로 구성하여 비교방법
💡 인접한 3개의 요소를 배열로 구성하여 비교방법
- 배열을 순회하면서 ‘인접한 배열’에서 3개의 요소를 하나로 묶어서 배열로 재 구성하여 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i++) {
int[] threeArr = Arrays.copyOfRange(arr, i, i + 3);
System.out.println("Three Arrays :: " + Arrays.toString(threeArr));
}
결과값 (Three Arrays) |
[1, 2, 3] |
[2, 3, 4] |
[3, 4, 4] |
[4, 4, 5] |
[4, 5, 6] |
[5, 6, 0] |
[6, 0, 0] |
3) 하나의 배열 내에서 독립적으로 묶어서 비교
1. 독립된 2개의 요소를 배열로 구성하여 비교방법
💡 독립된 2개의 요소를 배열로 구성하여 비교방법
- 배열을 순회하면서 독립된 2개의 요소를 배열로 재 구성하여 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i += 2) {
int[] copyArr = Arrays.copyOfRange(arr, i, i + 2);
System.out.println("Two Arrays :: " + Arrays.toString(copyArr));
}
결과값(Two Arrays) |
[1, 2] |
[3, 4] |
[4, 5] |
[6, 0] |
2. 독립된 3개의 요소를 배열로 구성하여 비교방법
💡 독립된 3개의 요소를 배열로 구성하여 비교방법
- 배열을 순회하면서 독립된 2개의 요소를 배열로 재 구성하여 비교합니다.
int[] arr = {1, 2, 3, 4, 4, 5, 6};
for (int i = 0; i < arr.length; i += 3) {
int[] copyArr = Arrays.copyOfRange(arr, i, i + 3);
System.out.println("Three Arrays :: " + Arrays.toString(copyArr));
}
결과값(Three Arrays) |
[1, 2, 3] |
[4, 4, 5] |
[6, 0, 0] |
오늘도 감사합니다. 😀
반응형
'Java > Short 개발' 카테고리의 다른 글
[Java/Short] 소문자/대문자 범위 내에 합, 차이 구하는 방법 : ASCII Code 활용 (0) | 2024.02.12 |
---|---|
[Java/Short] 소문자/대문자의 왼쪽/오른쪽 회전(이동) 방법 (0) | 2024.02.12 |
[Java/Short] IPv4, IPv6 정규 표현식(RegExp) 구성 방법 (4) | 2024.01.29 |
[Java/Short] SecureRandom을 이용한 랜덤 숫자/문자(난수) 생성 방법 (0) | 2024.01.22 |
[Java/Short] 직렬화/역 직렬화 방법 : jackson-binding (0) | 2024.01.04 |