Java/Short 개발

[Java/Short] 하나의 배열 내 요소 비교 방법 : 전체 요소, 독립적 비교

adjh54 2024. 2. 12. 00:20
반응형
해당 글에서는 하나의 배열을 기준으로 요소들 간의 비교 방법에 대해서 알아봅니다.






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]

 

 

 

 

 

 

 

오늘도 감사합니다. 😀

 

 

 

 

 

반응형