1차원 배열 기초 문법
1. 정렬
- 오름차순 정렬 Arrays.sort(arr)
- 내림차순 정렬 Arrays.sort(arr, Collections.reverseOrder())
// 배열 오름차순 정렬 - Arrays.sort(arr);
// 배열 내림차순 정렬 - Arrays.sort(arr, Collections.reverseOrder());
Integer[] arr1 = {3,5,9,6,2};
Arrays.sort(arr1); // 오름차순 정렬
for(int i=0; i<arr1.length; i++) {
System.out.println(arr1[i]);
}
// 내림차순 정렬
Arrays.sort(arr1, Collections.reverseOrder()); // Collections를 사용하려면 wrapper 자료형이어야 하므로 Integer 사용
for(int i=0; i<arr1.length; i++) {
System.out.println(arr1[i]);
}
2. 배열 복사
- 배열 복사 Arrays.copyOf(arr, arr.length) / Arrays.copyOf(arr, startIndex, endIndex)
- 메서드로 처리하는 것이 for으로 순회하는 것보다 약 2배 빠르다.
// 배열 복사 - Arrays.copyOf(arr, length);
// 배열의 특정 인덱스만 복사(startIndex~endIndex-1까지) - Arrays.copyOfRange(arr, startIndex, endIndex);
int[] arr1 = {10,20,30,40,50};
int[] arr2 = new int[arr1.length];
int[] arr3 = {60,70,80,90,100};
// arr1 을 arr2 에 할당
arr2 = Arrays.copyOf(arr1, arr1.length);
for(int i=0; i<arr2.length; i++) {
System.out.println(arr2[i]);
}
// arr3의 2~3 인덱스만 arr2에 할당
arr2 = Arrays.copyOfRange(arr3, 2, 4); // arr3[2]~arr3[3] 할당
for(int i=0; i<arr2.length; i++) {
System.out.println(arr2[i]);
}
3. 배열의 max/min 메모이제이션 시 참고 문법
- Integer 범위의 최댓값 / 최솟값 저장
int a = Integer.MAX_VALUE;
int b = Integer.MIN_VALUE;
추천 문제
코드트리_개수 세기 | https://www.codetree.ai/missions/4/problems/count-one-to-nine/description | #배열의 메모이제이션 |
코드트리_십의 자리 숫자 | https://www.codetree.ai/missions/4/problems/number-of-tens-digit/description | #배열의 메모이제이션 |
코드트리_배열 놀이 | https://www.codetree.ai/missions/4/problems/play-with-array/description | #배열 문법공부 |
코드트리_가장 왼쪽에 있는 최댓값 | https://www.codetree.ai/missions/4/problems/leftmost-max-value/description | #배열의 메모이제이션+변수 이용 |
⭐코드트리_자동차 단일 거래 이익 최대화하기 | https://www.codetree.ai/missions/4/problems/max-profit-of-single-car/description | #변수를 활용한 메모이제이션 |
코드트리_두 숫자의 차의 최솟값 | https://www.codetree.ai/missions/4/problems/minimum-difference-between-two-numbers/submissions | #변수를 활용한 메모이제이션, #정렬 특성 활용 |
⭐코드트리_함수를 이용한 연속부분수열 여부 판단하기 | https://www.codetree.ai/missions/5/problems/to-determine-whether-a-continuous-subsequence-is-made-using-a-function/description | #배열 인덱스 응용 |